文章详情
Php文档
Php问答
行业资讯
Php论坛
Php手册
Php博客
游戏榜单
软件榜单
关闭导航
搜索
热搜榜
热门下载
热门标签
关闭搜索
php爱好者
>
php文档
>
读文件尾时使用feof()的一些认识
读文件尾时使用feof()的一些认识
时间:
2010-10-27
来源:
nothing3618
下面一些内容摘录自百度百科:
与EOF的区别
在stdio.h中可以看到如下定义:
#define EOF (-1)
#define _IOEOF 0x0010
#define feof(_stream) ((_stream)->_flag & _IOEOF)
int c;
while(!feof(fp))
{
c = fgetc(fp);
printf("%X\n", c);
}
会发现多输出了一个FF,原因就是在读完最后一个字符后,fp->flag仍然没有被置为_IOEOF,因而feof()仍然没有探测到文件结尾。直到再次调用fgetc()执行读操作,feof()才能探测到文件结尾。这样就多输出了一个-1(即FF)。
正确的写法应该是:
int c;
c = fgetc(fp);
while(!feof(fp))
{
printf("%X\n", c);
c = fgetc(fp);
}
feof()可以用EOF代替吗?不可以。fgetc返回-1时,有两种情况:读到文件结尾或是读取错误。因此我们无法确信文件已经结束, 因为可能是读取错误! 这时我们需要feof()。
这样,基本对feof有一定的了解了。
相关阅读
更多 +
献给XRP军团:2025年Ripple Swell大会60秒重要新闻速览
软件资讯
2025-11-10
这就是XRP价格今天飙升的原因
软件资讯
2025-11-10
逆水寒手游玄蛟主怎么打-逆水寒手游玄蛟主打法
游戏攻略
2025-11-10
逆水寒手游航海贸易-本周特级航海单三连
游戏攻略
2025-11-10
阴阳师副本秘闻-丑女丑时之女秘闻番外
游戏攻略
2025-11-10
排行榜
更多 +
钢铁力量华为版
飞行射击
下载
家庭农场冒险无限钻石版
飞行射击
下载
战魂铭人无限钻石版
冒险解谜
下载
4
挖掘机我最强免广告版
156.95MB ·
90℃
1970-01-01
下载
5
我是一只猴免广告版
491.5MB ·
91℃
1970-01-01
下载
6
了不起的女仆
115.42MB ·
95℃
1970-01-01
下载