
请问main函数里面的extern 的作用域是哪里,main函数外的extern的作用范围又是哪里?
#include<iostream>usingnamespacestd;//intnum1;//定义性声明;externintnum1=0;//引用性声明;//改成ext...
#include <iostream>
using namespace std;
//int num1; //定义性声明;
extern int num1=0; //引用性声明; //改成extern int num1; 后就有问题了;->见书本139第4行;
void change()
{
num1+=3;
}
int main()
{
extern int num1;
cout<<"num1: "<<num1<<endl;
void change();
change();
cout<<"num1: "<<num1<<endl;
return 0;
} 展开
using namespace std;
//int num1; //定义性声明;
extern int num1=0; //引用性声明; //改成extern int num1; 后就有问题了;->见书本139第4行;
void change()
{
num1+=3;
}
int main()
{
extern int num1;
cout<<"num1: "<<num1<<endl;
void change();
change();
cout<<"num1: "<<num1<<endl;
return 0;
} 展开
展开全部
extern关键字在C中,是声明一个不在变量作用域定义(如不在本文件或在文件末尾定义的)但已存在的变量,你把它的变量定义给屏蔽了,编译器无法找到变量自然报错啦。还有,好像声明时不能赋初值吧?不在函数内是不能赋值的,除非“定义”时的初值
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询