我試圖從文件中的文本閱讀,這是我在做什麼:爲什麼我在文件中讀到最後一個字兩次?
int main(int argc, char* argv[])
{
ifstream inFile;
inFile.open(argv[1]);
string item;
while(inFile.good())
{
inFile >> item;
cout << item << " " << endl;
}
出於某種原因,它會讀取文件中的最後一個字的兩倍。我試着用count
變量來跟蹤它進入while循環的次數,它總是比文件中的總行數多一倍。我認爲這是因爲inFile.good()
聲明不會很快返回false。如果解決它,該怎麼辦?
你應該添加的文件contet太(如果它不是太長) – Arne
該文件可能是「好」,但接下來的'INFILE >> item'仍然可能會失敗,你的輸出也無妨。 –