EOF与feof

EOF与feof,第1张

EOF与feof

在C语言中,或更精确地说成C标准函数库中表示文件结束符(end of file)。


在while循环中以EOF作为文件结束标志,这种以EOF作为文件结束标志的文件,必须是文本文件。


在文本文件中,数据都是以字符的ASCII代码值的形式存放。


我们知道,ASCII代码值的范围是0~255,不可能出现-1,因此可以用EOF作为文件结束标志。


档案存取或其它 I/O 功能可能传回等于象征符号值 (巨集) EOF 指示档案结束的情形发生。


实际上 EOF 的值通常为 -1,但它依系统有所不同。


巨集 EOF会在编译原始码前展开实际值给预处理器。


C语言中,EOF常被作为文件结束的标志。


还有很多文件处理函数处错误后的返回值也是EOF,因此常被用来判断调用一个函数是否成功。


与feof

C语言中,当把数据以二进制形式存放到文件中时,就会有-1值的出现,此时不能采用EOF作为二进制文件的结束标志。


为解决这个问题,ANSI C提供一个feof函数,用来判断文件是否结束。


如果遇到文件结束,函数feof(fp)的值为1,否则为0.feof函数既可用以判断二进制文件是否结束,也可以用以判断文本文件是否结束。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/587133.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-12
下一篇 2022-04-12

发表评论

登录后才能评论

评论列表(0条)

保存