| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1196 人关注过本帖
标题:关于EOF,字符统计小程序
取消只看楼主 加入收藏
Moritz2699
Rank: 1
来 自:大连
等 级:新手上路
帖 子:9
专家分:4
注 册:2013-7-12
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:7 
关于EOF,字符统计小程序
程序代码:
#include <stdio.h>
main()
{
    double nc;
    for (nc = 0; getchar() != EOF; ++nc)
        ;
    printf("%.0f\n",nc);
}


开始是不管我输入什么都没有输出,后来问了别人才知道要按CTRL+Z

但是我发现,必须把^Z放在单独的一行才会给出输出结果,如果我只输入了一行,没有按回车,就按了CTRL+Z【类似sdfasdfadfad^Z】,再按回车,就没有任何输出

其中的原理是什么?EOF到底是怎么一回事。。。求解。。。
搜索更多相关主题的帖子: 统计 
2013-07-12 15:41
Moritz2699
Rank: 1
来 自:大连
等 级:新手上路
帖 子:9
专家分:4
注 册:2013-7-12
收藏
得分:0 
而且我如果按回车换行再按CTRL+Z的话,统计的总是多一个(估计是换行符也算一个的原因),怎么能消掉这个误差?谢谢。。。。
2013-07-12 15:42
Moritz2699
Rank: 1
来 自:大连
等 级:新手上路
帖 子:9
专家分:4
注 册:2013-7-12
收藏
得分:0 
回复 3楼 Mirob
C-Free

会调用cmd来运行
2013-07-12 17:15
Moritz2699
Rank: 1
来 自:大连
等 级:新手上路
帖 子:9
专家分:4
注 册:2013-7-12
收藏
得分:0 
回复 5楼 Mirob
没有。开发环境不同会带来这种差异么?
2013-07-12 19:57
Moritz2699
Rank: 1
来 自:大连
等 级:新手上路
帖 子:9
专家分:4
注 册:2013-7-12
收藏
得分:0 
以下是引用samson21在2013-7-12 20:30:08的发言:

 我用lcc 建造不了,你看看

lcc是什么
2013-07-12 20:39
Moritz2699
Rank: 1
来 自:大连
等 级:新手上路
帖 子:9
专家分:4
注 册:2013-7-12
收藏
得分:0 
以下是引用qq525273446在2013-7-12 22:28:52的发言:

 getchar() != EOF

为什么总是这样写?vc6中这是恒成立的啊

The C Programming Language里给出的例子
2013-07-13 00:39
Moritz2699
Rank: 1
来 自:大连
等 级:新手上路
帖 子:9
专家分:4
注 册:2013-7-12
收藏
得分:0 
很遗憾,这个论坛很是让我失望,以后不会再发帖子。完毕。
2013-07-13 19:00
Moritz2699
Rank: 1
来 自:大连
等 级:新手上路
帖 子:9
专家分:4
注 册:2013-7-12
收藏
得分:0 
以下是引用awisebird_在2013-7-13 19:34:25的发言:

是这样子的。只有单独输入^Z\n之后才能表示结束字符,如果输入类似abc^Z\n,则编译器会忽略^Z。

谢谢回复。我已经从csdn论坛得到答案啦,谢谢~
2013-07-13 23:24
快速回复:关于EOF,字符统计小程序
数据加载中...
 
   



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

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