如果我打開一個新文件進行輸入,並且在一個while循環之外呼叫input >> listSize;
,然後繼續調用input >> anothervariable
它會自動通過文件進行還是會再次讀取第一行?C++通過文件讀取
例子:
input >> listSize;
BaseStudent* studentlist = new BaseStudent[listSize.atoi()];
while (!input.eof())
{
input >> anothervariable; // I want this to start on the second line, not the first
}
輸入文件看起來是這樣的,我們可以編碼的模式(忽略多餘的空行):
12
Bunny, Bugs
Math 90 86 80 95 100 99 96 93
Schmuckatelli, Joe
History 88 75 90
Dipwart, Marvin
English 95 76 72 88
Crack Corn, Jimmy
Math 44 58 23 76 50 59 77 68
Kirk, James T.
English 40 100 68 88
Lewinsky, Monica
History 60 72 78
Nixon, Richard
English 35 99 70 70
Lincoln, Abraham
History 59 71 75
Clinton, William
Math 43 55 25 76 50 58 65
Duck, Donald
English 34 100 65 65
Duck, Daffy
History 55 70 70
Bush, George
Math 44 54 29 75 50 55 60
太棒了,謝謝。 – 2012-07-06 02:13:07
如果我使用'getline()',是否也會持有?我認爲使用行分隔符會更容易。 – 2012-07-06 02:13:55
是的。 getline將始終讀取下一個換行符,並將指針留在那裏。 – stark 2012-07-06 02:55:05