变量声明告知编译器变量的外表特征,包含函数类型、函数名、参数列表和一个分号。例如:
int a;
可以声明变量 a就一个整数,这符合上面的逻辑。但这就产生了一个矛盾:这段带码有足够的信息让编译器为整数a分配空间,而且编译器也确实给整数a分配空间,要解决这个矛盾,对于C/C++要一个关键字来说明“这只是一个声明,它的定义在别的地方”。这个关键字是extern,它表示变量是在文件以外定义的,或文件后面部分才定义。
下面是一些声明的example:
//declare.cpp //delartaion&definition examples #include <iostream> using namespace std; extern int i; //Declaration without definition extern float f(float); //Function declaration float b; //Declaration and definition float f(float a){ // defintion cout<<"a="<<a<<endl; return a+1.0; } int i; int h(int x){ //Declaration and definition cout<<"x="<<x<<endl; return x+1; } int main(){ b =1.0; i =2; cout<<"f(b)="<< f(b)<<endl; cout<<"h(i)="<< h(i)<<endl; }///:~
测试结果如下所示:
关于程序设计基石与实践更多讨论与交流,敬请关注本博客和新浪微博songzi_tea.
时间: 2024-10-17 23:04:44