Tekkaman

导航

 

2014年2月12日

摘要: 【feof使用注意】 以下是错误的用法,發生狀況->多讀一次?:1 FILE* pf;2 while(!feof(pf)){3 //fread 讀取4 //資料處理5 } feof是發生在fread使用"讀取過檔案"後,已讀到End-of-file位置時,回傳的指標才會是true(檔案結尾),所以上面的寫法在讀完最後一筆後,指標會停留在End-of-file位置前,需要再讀一次到在End-of-file位置後(判斷讀取資料失敗,因為已讀到eof),才會為true,而因為fread讀取失敗,buffer的資料不會改變,所以才會多讀一筆。 改善的方式,如先使用fread讀取,... 阅读全文
posted @ 2014-02-12 22:49 Tekkaman 阅读(405) 评论(0) 推荐(0)