1.自定义函数
2.函数的参数
3.函数的调用
4.函数递归
5.函数声明
一个c语言程序,无论其大小如何,都是由函数和变量组成的.
本节文章不讲库函数
1.自定义函数
顾名思义就是自己定的函数。如何自己定义呢?我们直接看主函数,从主函数出发来进行来进行里了
解.
1. int main() 2. { 3. return 0; 4. }
函数定义的基本形式是:
返回值类型 函数名(0或多个参数)
{
声明部分;
语句序列
}
从这里我们可以看出,定义一个函数需要有函数名(这里的main),参数,返回值(return 0)和接受返回值的类型(int ). 这里说一下:函数名,必须要有的,参数,返回值和类型可以不需要。
下面写一个计算两个数相加的函数:
#include <stdio.h> int add(int a, int b) { return a + b; } int main() { int a, b,sum; scanf("%d%d", &a, &b); sum = add(a, b); printf("%d\n", sum); return 0; }
上面的就是我们自己定义的函数
2.函数的参数
参数可以分为形参和实参
形参就是那个相加的函数add 后面()里面的就是参数
int add(int a, int b)
而实参就是函数调用传过去的参数,这里的a,b就是实参
sum = add(a, b);
形参只是实参的一份临时拷贝
3.函数的调用(传值和传址)
不管是传值还是传址调用,都只是对实参的一份临时拷贝,只不过传址调用可以对实参指向的数据进行改变。
如果你想改变实参,就传地址。不想改变就传值调用。
4.函数递归(就是自己调用自己的过程)
这里就说一下递归过程中注意的几点:
1)在递归的过程要不断接近递归出口的条件。
2)因为递归的过程中要不断的用空间,所以要注意栈溢出。
5.函数声明(告诉编译器函数里面的参数和返回类型)
在调用函数之前都有进行函数的声明,不声明不能使用,要先声明再定义,但是我都是把函数的定义放在main函数的前面,就避免了声明这一过程.