while (!fin.eof())會導致輸出一行空行

讀文件時,用while (!fin.eof())結束會導致輸出一行空行,
因爲文件指針到最後一個字符時並不會觸發eof,再讀一次讀不到數據才觸發eof,這樣c還保留着上一次的數據,又被輸出一次,peek()方法是讀取文件指針下一個位置的值,但並不移動文件指針:
改爲:
while (fin.peek()!=EOF)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章