关于Linux下feof()输出文件最后一行时重复的问题

       当我们用while(!feof(fp)){...}判断文件是否结束,并处理文件内容的时候经常会遇到文件最后一行重复两遍的问题,这是因为feof在遇到文件结束符EOF这个位置时,返回的还是0;而到下一个位置时才返回1,这时while循环才退出。所以单纯用上面的while循环判断会出现重复的现象。

     解决办法是,读的时候检查是否到达了文件尾部,如

     while (fread(……), !feof(……))
    { 

          ...
    }

   

你可能感兴趣的:(关于Linux下feof()输出文件最后一行时重复的问题)