应该说是局部声明 屏蔽了全局声明
就好像main函数里int i; 然后在下面某个大括号里{int i; } 这样是可以的一样
已在主函数前声明:
#include
void f(int n); //这里已经声明了。
void main()
函数声明放到 main()函数的内外编译出来是一样的
函数声明可以多次声明,因为它的作用只是告诉编译器这个函数的形参是个数是多少,形参类型是什么,和函数定义检查,并不分配内存空间,所以没有影响的
编程,不是越复杂越好
搞不懂你为什么怀疑结果是5……