| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 6322 人关注过本帖
标题:getchar()和EOF问题
取消只看楼主 加入收藏
michaelyj
Rank: 1
来 自:上海
等 级:新手上路
帖 子:55
专家分:0
注 册:2009-10-27
结帖率:88.24%
收藏
已结贴  问题点数:20 回复次数:2 
getchar()和EOF问题
小弟在看the c programming language遇到个问题
#include <stdio.h>

main()
{
    int c;
   
    c = getchar();
    while (c != EOF)
    {
        putchar(c);
        c = getchar();           /*还有如果我把这句去掉,为什么输入putchar会无限输出第一个字母呢*/
    }
}

这个循环条件里(c != EOF)是什么意思,为什么要“不等于”

应该是 C = EOF时循环终止呀~~搞不明白~~
搜索更多相关主题的帖子: getchar EOF 
2009-11-05 16:48
michaelyj
Rank: 1
来 自:上海
等 级:新手上路
帖 子:55
专家分:0
注 册:2009-10-27
收藏
得分:0 
EOF是终止符我知道,但是循环条件为什么要用它?不用他就会一直循环下去吗?

按Ctrl + z后回车退出循环,这个和C != EOF有关系吗?如果有关系,应该是 C = EOF才能终止呀,为什么要不等于呢?
2009-11-05 17:04
michaelyj
Rank: 1
来 自:上海
等 级:新手上路
帖 子:55
专家分:0
注 册:2009-10-27
收藏
得分:0 
我真是茅塞顿开啊~!理解了!

现在我看到下面有个练习题!

 * 验证表达式getchar() != EOF的值是0还是1

这个我又不懂了,EOF还有值吗,这句话的意思是说,判断getchar() != EOF是真的还是假的?

0代表什么
1代表什么啊?

这书上说的好含糊啊
2009-11-05 17:18
快速回复:getchar()和EOF问题
数据加载中...
 
   



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

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