在C语言中,编译一个C语言源文件是从第一行开始扫描到最后的,你调用一个函数,之前必须定义或申明过这个函数。
这样是合法的:
void f(){
}
int main(){
f();
}
这样也是合法的
void f();
int main(){
f();
}
void f(){
}
这样就是非法的
int main(){
f();
}
void f(){
}
所以函数调用不一定需要先声明,当函数定义调用函数之后需才要先申明。
如果函数定义在要调用该函数的函数的前面,就可以不用声明了,比如定义在main()前面的函数,在main()函数里面就可以不用声明,直接调用就可以,但是如果在后面的话,就要声明了