函数的定义什么是函数?
函数是一块代码,接受零个或多个参数,做一件事情,并且返回零个或一个值
调用函数
- 函数名(参数值);
- ( )起到了表示函数调用的重要作用,即使没有参数值也需要有;
- 参数必须按照 正确的数量和顺序输入;
#includevoid sum(int begin, int end) { int sum = 0; for (int i = begin;i <= end;i++) { sum += i; } printf("%d到%d的和是%dn", begin, end, sum); } int main() { sum(1, 10); sum(20, 30); sum(35, 45); }
- C语言调用函数,只能传值给函数;
- 函数调用时所给的值与函数返回类型不一致时,自动转换。
- return表示停止函数的运行,并返回一个值;
- 返回值可以赋值给变量 //c=max(15,20);
- 可以再传递给函数//c=max(max(15,20),25);
- 可以丢掉//max(15,20);
int max(int a,int b)
{
int ret;
if(a>b){
ret=a;
}else{
ret=b;
}
return ret;
}
int main()
{
int a,b,c;
a=5;
b=6;
c=max(10,12); //赋值给变量
c=max(a,b);
c=max(max(15,20),25); //传递给函数
max(15,23); //丢掉
}
没有返回值的函数
- void 函数名(参数表)
- 不能使用带值的return;
- 可以没有return;
- 调用的时候不能做返回值的赋值;
- 定义:定义在函数内部的变量就是本地变量,也称局部变量。(大括号内)。
注:参数也是本地变量。 - 变量的生存期和作用域
生存期:变量什么时候出现,到变量消亡;
作用域:什么范围内可以访问这个变量;
对于本地变量,这两个答案统一(大括号内)。 - 本地变量的规则:
本地变量是定义在块内的(函数/语句/任意大括号的块内);
进入块之前,变量不存在,离开即消失;
块外定义的变量在块内有效;
块内若有跟块外同名变量,则掩盖块外;
不能再用以块内定义同名变量;
本地变量不会被默认初始化;
参数在进入函数的时候就初始化了。
- void f(void):表示函数不需要参数;
void f():表示参数未知。 - C语言不允许函数的嵌套定义。



