我正在讀取一個文件,並在這個.dat文件的中間有一個標記。第一部分是變量和它們要分配的值。我得到的變量和他們的價值很好。這是我的。用eof和sentinel入侵
int main() {
ifstream infile;
string variable;
int value;
infile.open("test.dat");
while (infile.peek() != EOF) {
infile >> variable;
infile >> value;
}
return 0;
}
這裏是.dat文件
f 32
h 3
l -2
q 3
v 5
$
lqv
hfv
vvf
vfl
我首先想到的是用while循環。這是while (variable != "$")
,但是當我這樣做時,我會陷入無限循環。所以我完全失去了如何獲取和分配變量,然後獲得.dat文件的其餘部分。
我不得不改變這一點,因爲我不想硬編碼變量。我將使用2個循環。一個在$之前,一個在$之後。當我嘗試while (infile != "$")
我得到一個無限循環。