重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
int add(int x, int y); //这就是函数声明
成都创新互联公司专注于天镇网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供天镇营销型网站建设,天镇网站制作、天镇网页设计、天镇网站官网定制、重庆小程序开发公司服务,打造天镇网络公司原创品牌,更为您提供天镇网站排名全网营销落地服务。
int main(void)
{
........
}
int add(int x, int y) //函数定义
{
........
}
1 c语言是面向过程的语言,可以理解为一个函数调用另一个函数的语言,其中程序的入口是main函数
2 示例
#includestdio.h //包含要用到的函数的头文件,如printf
int max(int a, int b);//函数声明
int main(){//程序入口函数
int a = 12, b = 9;
int m = max(a, b);//函数调用
printf("max=%d\n", m);
getchar();
return 0;
}
int max(int a, int b){//函数定义
return a b ? a : b;
}
3 运行结果
举个例子来说明吧
void foo();
int main()
{
foo();
}
void foo()
{
;
}
以上代码中,第一句就是所谓函数声明。
其实直接用函数定义也就是void foo(){;}替代第一句也是可以的,不过函数的声明让你可以在定义它的代码段之前使用它。
比如以上的例子中,在编译进行到main函数中的foo调用的时候,foo函数还是没有定义的,但我们通过foo的声明告诉了编译器:foo是一个函数的名字,这个函数有着怎样怎样的参数表等等。
取决于你要传递的实际类型
如果你要传递一维数组或者一维指针,那么double*或者double[]没有区别
参数用数组时,会自动转变成对应指针
如果是二维数组,就必须用数组形式或者数组指针形式
比如double [3][4]
可以就写double[3][4]
也可以double[][4]
也可以double(*)[4]
但是不能写成double**
左边这个 不仅定义在其前面主函数能用,其他定义在其前面的函数也能使用。
右边这个,只能定义在其前面的主函数能用,其他函数想用,不行。
也就是
#includestdio.h #includestdio.h
double fact(int n); //声明函数 int main(void){
int main(void){ double fact(int n); //声明函数
/* /*函数体*/
**** return 0;
*/ }
return 0;
}
void test() void test()
{ {
fact(2); //能用 fact(2); //不能用 未声明
} }
double fact(int n){ double fact(int n){
/* /*函数体*/
*函数体
*/ }
}