问题: 函数原型的作用是什么?
#include<stdio.h>
//无函数原型, 程序编译时会报错.
int main()
{
int x ,y;
scanf("%d%d", &x, &y);
printf("max=%d\n", get_Max(x, y));
//
return 0;
}
int get_Max(int a, int b)
{
return a>=b ? a : b;
}
#include<stdio.h>
int get_Max(int x, int y);//函数原型
int main()
{
int x ,y;
scanf("%d%d", &x, &y);
printf("max=%d\n", get_Max(x, y));
//
return 0;
}
int get_Max(int a, int b)
{
return a>=b ? a : b;
}
若函数P()在函数get_Max()中被调用, 但函数P()的函数定义位于get_Max()函数定义之后, 这时只需在get_Max()函数定义之前加入函数P()的函数原型即可. 另外, 函数原型不一定都要写到程序的开头.
#include<stdio.h>
int get_Max(int t, int z);//函数原型
int main()
{
int x ,y;
scanf("%d%d", &x, &y);
printf("max=%d\n", get_Max(x, y));
//
return 0;
}
void P();//函数原型
int get_Max(int a, int b)
{
P();
return a>=b ? a : b;
}
void P()
{
printf("Welcome!\n");
return ;
}
在程序开头给出所有函数的函数原型, 这是一种良好的编程习惯.
#include<stdio.h>
int get_Max(int t, int z);
void P();//函数原型
int get_Max(int a, int b)
{
P();
return a>=b ? a : b;
}
void P()
{
printf("Welcome!\n");
return ;
}
int main()
{
int x ,y;
scanf("%d%d", &x, &y);
printf("max=%d\n", get_Max(x, y));
//
return 0;
}