关于变量的作用域,该怎么解决
关于变量的作用域C/C++ code#include iostreamusing namespace stdint main(){int sum 0for (int i
关于变量的作用域
C/C++ code#include <iostream>using namespace std;int main(){ int sum = 0; for (int i = 0; i != 10; i++) sum +=i; cout << "Sum from 0 to " << i << " is " << sum << endl; return 0;}
变量i的作用域应该是仅限于for循环的吧,为什么可以输出i的值
c++primer的参考答案也是说非法的啊????
[解决办法]VC6.0的语法是不符合标准的
[解决办法]VC6 是这个问题。VC2008应该会报错的
[解决办法]上面的程序在VC6下运行只会出现意想不到的数字
在VS中编译会出错,提示i未定义
c++primer只是定义了语法
具体编译器是否精确实现语法的定义,还有待商榷
如VC++不同版本就有不同的实现
不过也有可能是c++primer升级的原因