| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1806 人关注过本帖
标题:EOF指的是什么?
只看楼主 加入收藏
tigerball
Rank: 2
等 级:论坛游民
帖 子:58
专家分:32
注 册:2013-6-10
结帖率:80%
收藏
已结贴  问题点数:2 回复次数:9 
EOF指的是什么?
程序代码:
#include<stdio.h>
/*用于将输入复制到输出的程序*/
main()
{
    int c;
    c=getchar();
    while(c!=EOF){
        putchar(c);
        c=getchar();
    }
} 
我的疑问是:EOF是什么东东?我输入什么字符才可以结束输入?

我试了好半天,输入什么就显示什么,好像没有要结束的迹象.....


[ 本帖最后由 tigerball 于 2013-6-13 21:59 编辑 ]
2013-06-13 21:58
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:2 
End of File

windows下好像是Ctrl+z 然后回车罢 我也忘了。。
2013-06-13 22:01
tigerball
Rank: 2
等 级:论坛游民
帖 子:58
专家分:32
注 册:2013-6-10
收藏
得分:0 
回复 2楼 zklhp
我试了一下Ctrl + c,然后输入界面就没了,这个是EOF吗?
2013-06-13 22:03
tigerball
Rank: 2
等 级:论坛游民
帖 子:58
专家分:32
注 册:2013-6-10
收藏
得分:0 
以下是引用tigerball在2013-6-13 22:03:34的发言:

我试了一下Ctrl + c,然后输入界面就没了,这个是EOF吗?
我又想了一些,感觉不太对劲
2013-06-13 22:10
tigerball
Rank: 2
等 级:论坛游民
帖 子:58
专家分:32
注 册:2013-6-10
收藏
得分:0 
以下是引用zklhp在2013-6-13 22:01:14的发言:

End of File

windows下好像是Ctrl+z 然后回车罢 我也忘了。。
我试了一下,EOF的值输出来是 -1
2013-06-13 22:15
tigerball
Rank: 2
等 级:论坛游民
帖 子:58
专家分:32
注 册:2013-6-10
收藏
得分:0 
以下是引用zklhp在2013-6-13 22:01:14的发言:

End of File

windows下好像是Ctrl+z 然后回车罢 我也忘了。。
还是版主说的有道理
2013-06-13 22:17
蚕头燕尾
Rank: 10Rank: 10Rank: 10
来 自:Gryffindo
等 级:贵宾
威 望:12
帖 子:734
专家分:1546
注 册:2013-3-24
收藏
得分:0 
按理说windows确实是ctrl+z的

亲测win7无效

后来才知道ctrl+z和f6的作用是一样 的

亲测有用。

EOF是文件结束标志,但不是用来输入表示文件结束的(实现这个功能要用f6)。。。。

刘汝佳的书上是这样说EOF的:

如果文件结束,fgetc将返回一个特殊标记EOF,它并不是一个char,

使用fgetc(fin)可以从打开的文件fin中读取一个字符,一般情况下应当先检查它

不是EOF后再将其转换成char值。

这下楼主再不会输入EOF等着文件录入完毕了吧。



收到的鲜花
  • tigerball2013-06-13 23:03 送鲜花  3朵   附言:好文章

学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。               

                                                                                                                    Black Cat      Hello Tomorrow~
2013-06-13 22:24
蚕头燕尾
Rank: 10Rank: 10Rank: 10
来 自:Gryffindo
等 级:贵宾
威 望:12
帖 子:734
专家分:1546
注 册:2013-3-24
收藏
得分:0 
当然,从标准输入读取一个字符可以用getchar(),它等价于fgetc(stdin)


学习编程,为的是表达自己的思想,而不是被别人的思想所禁锢。要先明白自己想干嘛,而不要先问别人让你干嘛。               

                                                                                                                    Black Cat      Hello Tomorrow~
2013-06-13 22:26
laijinshui
Rank: 2
等 级:论坛游民
帖 子:15
专家分:12
注 册:2013-6-15
收藏
得分:0 
eof  好像是一个文件指向的标志   标志到最后则返回1,然返回0;   这是一个建立保存文档时   指向文档的标志   和直接编一个程序貌似无关的!
2013-06-16 14:18
lengyao1
Rank: 2
等 级:论坛游民
帖 子:11
专家分:11
注 册:2013-6-5
收藏
得分:0 
文件结束符
2013-06-16 20:50
快速回复:EOF指的是什么?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014363 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved