我目前正試圖將文件讀取到一個二位數組中,每次一位數字。我正在檢索數據的文件是maze.txt(如下面的代碼所示)。程序在當前狀態下編譯,但是當程序運行時,沒有任何內容會被打印出來並且永遠運行。我假設錯誤與第一個for循環有關。試圖讀取文件並將其輸入到數組中
This is the output of Chris's solution
//Input: A txt file containing a 10 x 10 maze of 0s and 1s
//Output: A route from the top left to the bottom right passing through only 0s
#include <fstream>
#include <iostream>
using namespace std;
const int LENGTH = 10;
const int WIDTH = 10;
int main()
{ char mazeArray[LENGTH][WIDTH];
int counter = 0;
fstream mazeFile;
mazeFile.open("maze.txt");
if(mazeFile.fail())
{
cout << "File not found." << endl;
return 0;
}
do
{
cin >> mazeArray[counter];
counter++;
} while(mazeFile.good() && counter < LENGTH * WIDTH);
for(int j = 0; j > 100; j++)
{
cout << mazeArray[j] << endl;
}
return 0;
}
Maze.txt
0 1 0 0 1 0 0 1 0 0
0 0 1 1 1 0 0 0 0 1
1 0 1 0 1 0 1 0 1 0
0 0 0 0 1 0 1 0 1 0
0 0 0 1 0 0 1 0 1 0
1 1 0 0 0 0 1 0 1 0
1 1 1 1 1 0 0 0 1 0
0 0 0 0 0 1 0 0 0 0
1 1 1 1 1 1 0 1 0 0
0 0 0 0 0 0 0 1 1 0
'(INT J = 0; J>時100; J ++)'此循環將運行零次。也許你的意思是'for(int j = 0; j <100; j ++)' – user463035818
如果你現在學會使用一個調試器,你會學到如何比這裏複製/粘貼/格式化快,你會在這個過程中學到一些東西。 –
不要編輯你的問題來解決你原來要求的問題。這使得它對未來的反應無用,並使已經給出答案的無效。 – user463035818