在C/C++中, getc() 到达文件结尾时返回EOF。getc()在失败时也会返回EOF。仅将GetF()与check返回的实际值进行比较是不够的。为了解决这个问题,C提供了 feof() 它仅在文件结束时返回非零值,否则返回0。 例如,考虑下面的C程序来打印文件的内容 测验txt 在屏幕上。在程序中,首先将getc()的返回值与EOF进行比较,然后使用feof()进行另一次检查。通过检查,我们确保程序打印 “已到达文件结尾” 仅当到达文件末尾时。如果getc()由于任何其他原因返回EOF,那么程序将打印 “出了点问题”
null
#include <stdio.h> int main() { FILE *fp = fopen ( "test.txt" , "r" ); int ch = getc (fp); while (ch != EOF) { /* display contents of file on screen */ putchar (ch); ch = getc (fp); } if ( feof (fp)) printf ( " End of file reached." ); else printf ( " Something went wrong." ); fclose (fp); getchar (); return 0; } |
如果您发现任何不正确的地方,或者您想分享有关上述主题的更多信息,请写下评论。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END