c语言学习笔记—8
这次笔记学习函数。
我们一直都接触这main函数,一个函数中只能有一个函数,就是这个主函数main,也可以自己定义,但是要声明函数,先看个例子:
/*
函数的学习
*/
#include<stdio.h>
//先对自己定义的函数进行函数声明
int add(int a,int b);
int sub(int a,int b);
int mul(int a,int b);
int divide(int a,int b);
int main()
{
int a,b;
a=10;
b=5;
add(a,b);
printf("a+b=%d.\n",add(a,b)) ;
}
int add(int a,int b)
{
return a + b;
}
int sub(int a,int b)
{
return a - b;
}
int mul(int a,int b)
{
return a * b;
}
int divide(int a,int b)
{
return a / b;
}
问题1:什么是形参和实参?
答:在函数中具有形参和实参的说法。我们在定义函数的时候要告诉编辑器定义的输入时什么类型的量,输出是什么类型的量,比如:
int add(int a, int b)
{
return a+b;
}
这里的a,b就是所谓的形参,全称形式参数,也就是说我们并不知道它的值真正是多少,而是仅仅需要知道今后在调用的时候需要给这个函数输入两个int型的值,编辑器就会输出给我们一个int型的值,这两个值经历了什么变成这一个值的,就是看这个函数体里面的程序怎么写的了。
实参就是在调用时,要真正传值的时候,比如在main中:
int a,b;
a=10;
b=5;
add(a,b);
10,5就是所谓的实参,实际具有值的参数。
下面看一下函数的调用过程,实际上就是实参传递给形参的一个过程:
/*
函数的学习
*/
#include<stdio.h>
//先对自己定义的函数进行函数声明
int add(int a,int b);
int sub(int a,int b);
int mul(int a,int b);
int divide(int a,int b);
int main()
{
int c,d;
c=10;
d=5;
printf("c-d=%d.\n",sub(c,d)) ;
}
int add(int a,int b) //形参。就是告诉你今后要输入2个int型变量,会输出一个int型量。
{
return a + b;
}
int sub(int a,int b)
{
return a - b;
}
int mul(int a,int b)
{
return a * b;
}
int divide(int a,int b)
{
return a / b;
}
结果是:c-d=5.
说明传值是按顺序传的。