C语言函数:从声明到调用,核心要点梳理
最近在学C语言的函数部分,把关键知识点整理了一下。
函数声明(原型)
声明的作用是告诉编译器"有这么个函数",格式如下:
c
返回值类型 函数名(参数类型列表);
举个例子:
c
int max(int a, int b);
参数名可以省略, int max(int, int); 也合法。如果函数定义写在调用前面,声明可以省掉;否则必须先声明,否则编译器会报错。
函数定义
定义就是函数的具体实现,包含函数体:
c
int max(int a, int b) {
return a > b ? a : b;
}
简单说:声明是"打个招呼",定义是"真身"。
函数调用
用的时候直接写函数名加实参:
c
int m = max(10, 20);
参数传递
C语言里参数传递都是值传递——传进去的是副本,函数内部改参数不会影响外面的变量。想改外面的值?传指针进去。
返回值
用 return 返回结果,类型要和声明的一致。不需要返回值就写 void 。
为什么要用函数
两点:一是代码复用,一段逻辑写一次,到处能用;二是模块化,把大问题拆成小函数,思路清晰,调试也方便。
函数是C语言最基础的抽象手段,搞懂了它,后面写复杂程序才不会乱。