c++变量作用域的问题

2025-05-13 03:50:44
推荐回答(3个)
回答(1):

不是作用域的差别,而是命名空间的差别
因为你使用了std(using namespace std;)命名空间,所以它默认是在std中找count变量,所以失败,在变量前加全局符即可解决或使用方法二
如有疑问
QQ: 906755598

楼上的编译成功是因为Vc6.0太老了

#include
#include
using namespace std;

int count=0;

int main()
{
cout<<::count;
cin.get();
}

方法二:
#include
#include
int count=0;

int main()
{
std::cout< std::cin.get();
}

如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!

回答(2):

你 该一下程序就不同了
把这个 Line6 int i=1;
cout<<"i="< {
int i=2;
改成Line6 int i=1;
cout<<"i="< {
i=2;
就是去掉一个 int

回答(3):

你可以看花括号的匹配关系,line17和line6是在同一层里的,因此,line17里的i就是line6里定义的i