函数
概述:将一段经常使用的函数封装起来,减少重复代码,一个较大的程序,一般分为若干个程序块,每个模块实现特定的功能
函数的定义
- 返回值类型:在函数定义中,一个函数可以返回一个值
- 函数名:给函数起个名称
- 参数列表:使用该函数时,传入的数据
- 函数体语句:花括号内的代码,函数内需要执行的语句
- return 表达式:和返回值类型挂钩,函数执行完后,返回相应的数据
语法:
返回值类型 函数名(参数列表) {
函数体语句
return 表达式
}
例:
函数的调用
功能:使用定义好的函数
语法:函数名(参数)
num1和num2称为形参,a和b称为实参
在函数调用时候,实参的值会传递给形参
总结:函数定义小括号内的称为形参,调用函数时传入的数据称为实参
值传递
- 值传递,就是函数调用时实参把数值传入给形参
- 值传递时,如果形参变化,不会影响实参
总结:值传递时,形参是修饰不了实参的
函数的常见样式
常见的函数样式有4种:
- 无参无返
- 有参无返
- 无参有返
- 有参有返
如果函数不需要返回值,声明的时候可以写void
返回值不需要的时候,可以不写return
无参不可以创建变量,原因是无法分配内存
函数的声明
作用:告诉编译器函数名称及如何调用函数,函数的实际主体可以单独定义
- 函数的声明可以多次,但是函数的定义只能有一次
如果函数的定义在使用函数地方的下面则会报错,所以:
提前告诉编译器函数的存在,可以利用函数的声明
函数的分文件编写
作用:让代码结果更加清晰
函数分文件编写一般有四个步骤:
- 创建后缀名为.h的头文件
- 创建后缀名为.cpp的源文件
- 在头文件中写函数的声明
- 在源文件中写函数的定义
最后在要调用函数的.cpp文件中,在头部引入刚才定义的.h文件 例:#include"swap.h"