为了说明清楚,用下面一个简单的两数相加程序进行说明。
#include<stdio.h>
void main()/*计算两数相加*/
{
int a=5,b=4,c;
int add(int m,int n);/*对函数进行声明*/
c=add(a,b);/*函数调用*/
printf("%d",c);/*输出结果*/
getch();
}
int add(int m,int n)
{
int sum;
sum=m+n;/*计算两数相加*/
return sum;/*返回函数值*/
}
程序中定义了一个“ int add(int m,int n) ”函数,函数有两个形参,定义返回类型为整型。
参数是用来传递值用的。定义函数时在括号中定义的变量叫形参(形式参数),如“int add(int m,int n)”里面的“m”和“n”,在调用函数时提供给函数的变量叫实参(实际参数),如“c=add(a,b);”里的“a”和“b”,当调用函数时,程序将 a 的值传递给 m(m=a),将 b 的值传递给 n (n=b),然后运行函数add(),即将 m 和 n 两数相加并赋值给 sum 。然后返回sum 的值给 C 。
函数是用来完成一些功能的程序段,所以函数执行完之后要有所作用,要么就完成输入、输出等动作,要么就进行一些计算,所以要求它执行完之后能得到一些结果,而结果就用返回值来得到(return 语句),返回的结果的数据可能是整型,可能是字符型…这就需要你来定义(如上面的 add() 函数被我定义为整型,因为我要得到的值是整型——变量"c"为整型),这就是函数的返回类型。return 语句中的变量(sum)的类型必须和你定义的返回类型(int add(int m,int n)
)一至。