一、函数
Ⅰ. 定义
定义方式:
数据类型 函数名(形参)
{
函数体;
}
int add(int a,int b)
{
return a+b;
}
- 函数的数据类型是函数的返回值类型,若类型为 则无返回值。
- 形参可以是空的,但圆括号必须存在。
Ⅱ. 函数的声明
方式:
数据类型 函数名(形参);
int add(int a,int b); //或者int add(int,int);
若函数在调用之前定义,则无需声明。
Ⅲ. 函数的调用
① 传值调用
方式:
int x, y;
void swap(int a, int b)
{
int t;
t = a, a = b, b = t;
return;
}
int main()
{
x = 1, y = 2;
swap(x, y);
printf("%d %d", x, y);
return 0;
}
输出:1 2
传值调用时,将全局变量 的值赋予局部变量 ,虽函数内交换了 的值但 的值并未被影响。
② 传址调用
方式:
int x, y;
void swap(int &a, int &b)
{
int t;
t = a, a = b, b = t;
return;
}
int main()
{
x = 1, y = 2;
swap(x, y);
printf("%d %d", x, y);
return 0;
}
输出:2 1
与①中相比,函数的形参变成了指针,此时传入局部变量 的是全局变量 的内存地址,进行交换时直接对内存地址里的内容造成影响,相当于交换 的值。