结论是,没有什么区别。
直接声明定义的意思是
void func(){
//code;
}
int main(){
//code
}
先声明后定义的意思是:
void func();
}
int main(){
//code
}
void func(){
//code;
}
形式可能不完全像这样,但说白了,这样就是先不管这个函数具体做些什么事情,而是先把它的名字、参数写好,具体怎么做,到时再实现。
C/C++语言编译系统是由上往下编译的。所以被调函数要放在主函数前面这一点是肯定的,其次,一些变量的顺序可能影响编译,如下所示。
#include<iostream>
using namespace std;
void func();
int n = 1;
int main(){
cout<<"n:"<<n<<endl;
}
void func(){
n += 12;//编译通过
}
#include<iostream>
using namespace std;
void func(){
n += 12;//编译不通过,没有声明变量n
}
int n = 1;
int main(){
cout<<"n:"<<n<<endl;
}