1. 函数的特性及定义
在编程语言中,你可以把函数看做一个盒子,这个盒子有如下几个特性:
- 开始执行时,函数可以被输入一些值
- 执行过程中,函数可以做一些事情
- 执行完成后,函数可以返回一些值
例如:我们想要计算两个数a和b相加的结果,可以将其写作一个函数:
- 这个函数输入
a,b
。 - 这个函数返回
a + b
的和。
代码如下:
这一段代码被称之为add函数的函数定义。
// 这一段代码被称之为add函数的函数定义
int add(int a, int b)
{
return a + b;
}
函数的写法公式:
函数返回值类型 函数名(函数输入参数值)
{
做点什么事情
return 函数返回值;
}
被花括号包括的被称为函数体
,注意函数体一定要被花括号包括且不可省略。花括号上面的函数名、函数参数及返回值被称作函数头
。
这个函数输入了int a,int b
,并用return
返回了a与b的和。
注意每个输入参数必须指明其变量类型,不能省略变量类型。
int add(int a, int b) // 正确
int add(int a, b) // 错误
我们把函数名取名为add。当然自定义函数的函数名可以按照自己的喜好来写,就算写成aaaaa也行。不过,为了函数名拥有语义化,方便人阅读理解,我们一般使用英文来作为函数名。
2.函数的调用
// 这一段代码被称之为add函数的函数定义
int add(int a, int b)
{
return a + b;
}
函数需要被另一个函数调用才能执行。
例如:我们用main
函数来调用add
函数。
#include <stdio.h>
int add(int a, int b)
{
return a + b;
}
int main()
{
int result;
result = add(2, 3); // 函数调用
printf("%d", result);
return 0;
}
main被称作主调函数,add被称作被调函数。
在main中,将2,3
两个参数传入了add函数,并调用add函数。
在add函数头中,标明了函数的返回值类型为int,说明这个函数被调用后将返回一个int类型的结果。所以,我们使用int类型的result变量存放add函数的返回值。