![eb6c96415cb691379611fa873b059b49.png](https://i-blog.csdnimg.cn/blog_migrate/5a8726507e985caac0c9f801087a4642.jpeg)
函数
函数的本质就是针对变量的操作过程,同时可能也会改变当前程序的状态。它接受多个输入值,计算并返回一个输出值。
函数大体上分为 3 类:
- 主函数:每个 C 程序都至少有一个
main()
。 - 内置函数:由 C 标准库提供。例如,
strcat()
用来连接两个字符串,memcpy()
用来复制内存到另一个位置。 - 自定义函数
函数的声明
函数声明就是告诉 C 编译器函数的名称、返回类型和参数以及如何调用函数。函数的实际主体可以单独定义,但当你在一个源文件中定义函数且在另一个源文件中调用函数时,函数声明是必需的。
声明函数时,首先将返回值的类型写在前面,后面紧跟函数的名字,而后的一对圆括号里面包裹函数的输入参数,参数之间用 ,
进行分割。
函数声明包括以下几个部分:
return_typefunction_name(parameter list);
在函数声明中,参数的名称并不重要,只有参数的类型是必需的,因此下面两种都是有效的声明:
int max(int num1, int num2);
int max(int, int);
函数的定义
函数体部分紧跟其后,
函数定义除了定义函数的名称、返回类型、形参列表之外,最重要的是编写函数的主题,即函数体。包裹在 {}
里,里面包含了函数执行的所有语句,语句之间使用 ;
分隔。return
语句用来结束函数的执行,并返回一个值。
C 程序中函数的结构如下:
return_typefunction_name(parameter list){
body of the function
}
- 返回类型:一个函数可以返回一个值,返回类型定义了函数返回的值的数据类型。有些函数不需要返回值,在这种情况下,return_type 是关键字
void
。 - 函数名(函数标识符):函数名和参数列表一起构成了函数签名。
- 形式参数:形参就像是占位符。当函数被调用时,向形参传递一个值,而这个值被称为实际参数。形参列表包括函数参数的类型、顺序、数量。形参是可选的,即形参列表可以为。
- 函数主体:包含了一组定义函数执行任务的语句。
/* 函数返回两个数中较大的那个数 */
int max(int num1, int num2)
{
/* 局部变量声明 */
int result;
if (num1 > num2)
result = num1;
else
result = num2;
return result;
}