[Ubuntu-zh] 回复: feof的问题
吴亚杰
yajie.wu在hotmail.com
星期五 三月 16 12:21:36 UTC 2012
恩 问题已经解决了~~
确实是要先读取数据
> From: hoxily在qq.com
> To: ubuntu-zh在lists.ubuntu.com
> Date: Fri, 16 Mar 2012 17:40:41 +0800
> Subject: [Ubuntu-zh] 回复: feof的问题
>
> 上C语言课时,我的老师李强强调,
> feof函数的正确使用方法是先尝试读取数据,然后用feof判断是否结束.
> 比如如下代码片段:
> char c;
> c = fgetc(fp);
> while(!feof(fp))
> {
> printf("%X/n", c);
> c = fgetc(fp);
> }
>
> 参考链接:http://www.cnblogs.com/chenyadong/archive/2012/03/06/2382628.html
> ------------------
> Hoxily:世界是合理的简单的因而是可以理解的。
>
>
>
>
>
>
> ------------------ 原始邮件 ------------------
> 发件人: "吴亚杰"<yajie.wu在hotmail.com>;
> 发送时间: 2012年3月16日(星期五) 下午5:24
> 收件人: "ubuntu-zh"<ubuntu-zh在lists.ubuntu.com>;
>
> 主题: [Ubuntu-zh] feof的问题
>
>
>
> 在用feof判断文件是否结束的时候总会多出一行:
> 下面的代码运行的结果总是 最后一行被读取了两次。
> whie(!feof(fp)){
> fscanf(fp,“%d”,&data);
> }
> fp指向的文件中存放如下的内容:
> 1122334455
> 运行上面的代码,55总是被读取了两次。这是为什么?feof在判断文件结束时返回非零值,不是应该退出while嘛?
>
> -------------- 下一部分 --------------
> 一个HTML附件被移除...
> URL: <https://lists.ubuntu.com/archives/ubuntu-zh/attachments/20120316/7e541eec/attachment.html>
> --
> ubuntu-zh mailing list
> ubuntu-zh在lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-zh
> -------------- 下一部分 --------------
> 一个HTML附件被移除...
> URL: <https://lists.ubuntu.com/archives/ubuntu-zh/attachments/20120316/bf74f0ce/attachment.html>
> --
> ubuntu-zh mailing list
> ubuntu-zh在lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-zh
-------------- 下一部分 --------------
一个HTML附件被移除...
URL: <https://lists.ubuntu.com/archives/ubuntu-zh/attachments/20120316/e94dc616/attachment.html>
关于邮件列表 ubuntu-zh 的更多信息