Что бы я ни пытался, я не могу заставить следующий код работать правильно.
ifstream inFile;
inFile.open("sampleplanet");
cout << (inFile.good()); //prints a 1
int levelLW = 0;
int numLevels = 0;
inFile >> levelLW >> numLevels;
cout << (inFile.good()); //prints a 0
на первом cout ‹‹ (inFile.good()); он печатает 1, а на втором 0. Это говорит мне, что файл открывается правильно, но inFile дает сбой, как только считывается из него. В файле более чем достаточно строк/символов, поэтому к этому моменту я никак не пытался прочитать конец файла.
Содержимое файла:
8
2
#level 2
XXXXXXXX
X......X
X..X..XX
X.X....X
X..XX..X
XXXX...X
X...T..X
XXX..XXX
#level 1
XXXXXXXX
X......X
X..X.XXX
X.X..X.X
X..XX..X
X......X
X^....SX
XXX.^XXX
hexdump -b <file>
для просмотра содержимого файла. - person amit   schedule 21.01.2010