| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 556 人关注过本帖
标题:关于一个 EOF 的判断,不明白有什么用,大家帮忙看看,谢谢
只看楼主 加入收藏
幻世梵天
Rank: 1
等 级:新手上路
帖 子:23
专家分:4
注 册:2014-2-7
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:7 
关于一个 EOF 的判断,不明白有什么用,大家帮忙看看,谢谢
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>

int get_int();

int main()
{
   int x;

   x = get_int();
   printf("You entered %d.\n",x);

   return 0;
}


int get_int()
{
    int ch,i,sign = 1;
    while (isspace(ch =getchar()))
    ;

    if(ch != '-'&& ch != '+' && !isdigit(ch)&& ch != EOF)   //为什么要检测EOF??
    {
        ungetc(ch,stdin);
        return 0;
    }

    if(ch == '-')
    sign = -1;

    if(ch == '+' || ch == '-')
    ch = getchar();


    for(i = 0;isdigit(ch);ch = getchar())
    i = 10 *i +(ch -'0');

    i *= sign;

    if(ch != EOF) //这个又有什么用呢?

    ungetc(ch,stdin);

    return i;
}



谢谢
搜索更多相关主题的帖子: include return 检测 
2014-08-29 23:21
ditg
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:16
帖 子:852
专家分:1937
注 册:2014-4-10
收藏
得分:10 
把输入当成文件看待,EOF是文件结束符。

梦想拥有一台龙芯3A-4000
2014-08-29 23:28
幻世梵天
Rank: 1
等 级:新手上路
帖 子:23
专家分:4
注 册:2014-2-7
收藏
得分:0 
回复 2 楼 ditg
为什么要当成文件看?在什么情况下可以当做文件看呢?
2014-08-31 18:44
ditg
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:16
帖 子:852
专家分:1937
注 册:2014-4-10
收藏
得分:0 
这应该不是个“为什么”的问题,只是看问题的角度和立场而已,只要能保证自己想要的结果正确输出就行。

梦想拥有一台龙芯3A-4000
2014-08-31 18:51
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:10 
以下是引用幻世梵天在2014-8-31 18:44:28的发言:

为什么要当成文件看?在什么情况下可以当做文件看呢?
输入输出当成文件看是一种抽象方式 这种方式在上个世纪七十年代(?)非常流行 C语言和Unix系统(包括Unix-Like)都使用这种抽象方式
2014-08-31 19:00
幻世梵天
Rank: 1
等 级:新手上路
帖 子:23
专家分:4
注 册:2014-2-7
收藏
得分:0 
回复 5 楼 zklhp
意思是什么情况都适用,不会出错了?
2014-08-31 19:27
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
以下是引用幻世梵天在2014-8-31 19:27:14的发言:

意思是什么情况都适用,不会出错了?

我可没这么说
2014-08-31 19:35
幻世梵天
Rank: 1
等 级:新手上路
帖 子:23
专家分:4
注 册:2014-2-7
收藏
得分:0 
回复 7 楼 zklhp
哦,我自己再找例子看看吧,谢谢了
2014-09-02 22:28
快速回复:关于一个 EOF 的判断,不明白有什么用,大家帮忙看看,谢谢
数据加载中...
 
   



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

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