Visual c++ 循环外部变量的范围

Visual c++ 循环外部变量的范围,visual-c++,Visual C++,我正在尝试使用一个几年前编写的程序,该程序是用以前版本的MS VC++编译的(我使用的是VC++2008)。有很多(数百个)类似于以下内容的实例: int main () { int number = 0; int number2 = 0; for (int i = 0; i<10; i++) { //something using i } for (i=0; i<10; i++) { //something using i } retu

我正在尝试使用一个几年前编写的程序,该程序是用以前版本的MS VC++编译的(我使用的是VC++2008)。有很多(数百个)类似于以下内容的实例:

int main () {
  int number = 0;
  int number2 = 0;

  for (int i = 0; i<10; i++) {
   //something using i
  }

  for (i=0; i<10; i++) {
   //something using i
  }

  return 0;
}
int main(){
整数=0;
整数2=0;

对于(int i=0;i,MSVC的早期版本有这样一个“错误特性”,因为它将这些变量泄漏到封闭范围中

换言之,它处理了:

for (int i = 0; i<10; i++) {
    // something using i
}

for(int i=0;谢谢。这很有意义。我并不真的希望更改所有这些错误…也许可以进行全局搜索,并用
for替换
for(i=
)(int i=
?尽管这可能会给您带来相反的错误。您之前提出的问题非常有见地,感谢您的链接!也许您是对的,即使我必须返回并修复一些其他导致的错误,进行搜索和替换可能会减少工作量。
int i;
for (i = 0; i<10; i++) {
    // something using i
}