博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++自学第一课:函数
阅读量:4961 次
发布时间:2019-06-12

本文共 1715 字,大约阅读时间需要 5 分钟。

 

此贴并非教学,主要是自学笔记,所述内容只是些许个人学习心得的记录和备查积累,难以保证观点正确,也不一定能坚持完成。

如不幸到访,可能耽误您的时间,也难及时回复,贴主先此致歉。如偶有所得,相逢有缘,幸甚关照。

学习的内容资料,多数来自菜鸟教程等网上公开的资料,特此向原作者致谢。

函数

要说各种编程里面最基本的概念,我觉得是函数(function)。

区别:编程中的“函数”、数学中的“函数”、英文function、中文含义-——功能

“函数”和“功能”的英文(function)相同,实际上个人感觉编程中的“函数”意思与“功能”更接近,不知道哪位前辈翻译成“函数”了,可能觉得“功能”太直白了吧。

但是可能有人觉得叫函数不太贴切,于是又给函数起个外号叫“方法(method)”,这其实让我们更不知所云。

但是和数学中的“函数”虽有区别,却也有些相似处。

数学中的函数是一种用公式表达的变量,跟随自变量变化。

程序中的函数是一组可以执行特定功能的子程序,它可以传入参数,通过我们设计的程序流程(类似于数学公式),计算出结果。

这样来说结果好象是参数的数学函数。

它是分步运算的一小步,许多这样的子程序计算出多步结果,最终整合成我们计算的目标。

同时我们要给它起好名字,可以方便地重复调用,下次找它时叫名字就可以帮我们干同样的事了。

 

好了,少说闲话,我们要正式开始学习了:

C++ 中的函数定义的一般形式如下:

return_type function_name( parameter list )
{
body of the function
}
这个需要我来翻译一下:
返回_类型 函数_名称( 参数列表)
{函数体}
返回_类型。。。在这里是说先要声明这个函数的计算结果是什么类型的数据,是整数啊、小数啊,还是字符啊。
C语言这类比较高级些的编程语言比较变态的一点就是:要先声明类型。
参数列表。。。叫参数却不是数,是一种变量;在这里要写的是一些名字,是你给要输入的参数起的名字。
参数在这里正式的名称叫形式参数,简称形参,它随函数在内存中产生,并随着函数执行完成销毁;
参数也可以没有名字,但如果你想定义一个无名参数,一定要写上它的类别,例如
int max(int, int);
参数可以有很多,用逗号","隔开(注意使用英文逗号,用中文逗号要出错哦),用圆括号括起来,也可以没有参数,用空的一对圆括号表示。
函数体。。。是顺序执行的一些语句,实现你在这个函数中想执行的功能。用大括号开始,用大括号结束。
下面举个栗子。。。这么轻的东西还要举吗?。。。你还不明白,要举的:

实例

以下是 max() 函数的源代码。

该函数有两个参数 num1 和 num2,会返回这两个数中较大的那个数:

// 函数返回两个数中较大的那个数
int max(int num1, int num2)
{
// 局部变量声明
  int result;
  if (num1 > num2)
  result = num1;
  else result = num2;
  return result;
}
我再来解释一下:
//双分数线表示后面是注释,与"/"单分数线相区别
整数 max(整数 num1, 整数 num2)
//max是函数名称,它的结果将是一个整数,它有两个参数:num1和num2,这两个都是整数
{

 整数 result; //这里声明了一个局部变量result,又出现了“变量”,这次是局部变量,是指只参与函数内部计算的变量。

 if (num1 > num2)

result = num1;

//如果num1 > num2,result 就等于 num1

else result = num2;

//其它情况 result 等于 num2,就是说num1小于等于num2的情况。

  return result;

//返回 result的值,这也是这个函数的结果,可以供给其它函数使用。

}

 这个函数输入两个整数,求出其中更大的那个值。

转载于:https://www.cnblogs.com/thomason/p/10315435.html

你可能感兴趣的文章
Boosting(提升方法)之AdaBoost
查看>>
链接元素<a>
查看>>
Binding object to winForm controller through VS2010 Designer(通过VS2010设计器将对象绑定到winForm控件上)...
查看>>
Spring Boot实战笔记(二)-- Spring常用配置(Scope、Spring EL和资源调用)
查看>>
活现被翻转生命
查看>>
POJ 1228
查看>>
SwaggerUI+SpringMVC——构建RestFul API的可视化界面
查看>>
springmvc怎么在启动时自己执行一个线程
查看>>
流操作的规律
查看>>
Python基础学习15--异常的分类与处理
查看>>
javascript运算符的优先级
查看>>
React + Redux 入门(一):抛开 React 学 Redux
查看>>
13位时间戳和时间格式化转换,工具类
查看>>
vue router-link子级返回父级页面
查看>>
C# 通知机制 IObserver<T> 和 IObservable<T>
查看>>
Code of Conduct by jsFoundation
查看>>
div 只显示两行超出部分隐藏
查看>>
C#小练习ⅲ
查看>>
电源防反接保护电路
查看>>
arraylist
查看>>