2016-12-14 82 views
-2

我在while循环中有两个for循环,但是当我执行程序时,while循环变成了一个无限循环。这里是我的代码:For循环(在while while循环中)被忽略

while (!inFile1.eof()){ 

     for (int row = 0; row < 5, row++;){ 
      for (int column = 0; column < 5, column++;){ 

      getline(inFile1, fileData, (',')); 

      matrix1[row][column] = stoi(fileData); 

      cout << matrix1[row][column]; 

      } 
     }  
    } 

我是新的C++,所以也许我做了一个愚蠢的错误,但我想感谢所有帮助

+0

我一直在寻找答案,并在我即将发布回复的那一刻删除了您之前的问题。 – ilim

+0

阅读为什么'while(!inFile1.eof())'是错误的[这里](http://stackoverflow.com/questions/5605125/why-is-iostreameof-inside-a-loop-condition-considered-wrong )。 – molbdnilo

+0

我建议你撤消你之前提出的问题,我们可以继续这个问题。 – ilim

回答

3

您的for循环,你应该更换杂散逗号用分号:

int row = 0; row < 5; row++;

int column = 0; column < 5; column++;

目前停止条件row < 5, row++,由于逗号运算符的工作方式,与row++相同。

最终你的int会溢出,然后你在未定义的行为土地。