Chinaunix首页 | 论坛 | 博客
  • 博客访问: 850923
  • 博文数量: 213
  • 博客积分: 5048
  • 博客等级: 大校
  • 技术积分: 1883
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-14 10:14
文章分类

全部博文(213)

文章存档

2011年(4)

2010年(55)

2009年(47)

2008年(107)

我的朋友

分类: LINUX

2008-10-24 22:10:20

#include <stdio.h>

int main(void)
{
    char c;
    while ((c = getchar()) != EOF)
           putchar(c);
}

这段代码可能要在有的系统出错。

由于gechar返回的是EOF,这是一个int数值,所以getchar的返回值是int型,

所以如果系统使用的是有符号字符类型,程序还可以正常工作,但是如果使用是无符号字符类型,那么返回的EOF被保存到字符C后就不再是-1,所以程序会进入死循环。

阅读(1884) | 评论(0) | 转发(0) |
0

上一篇:C关键字restrict

下一篇:Fedora7安装后的配置

给主人留下些什么吧!~~