一个简单的C程序

从终端读入一个字符,再从终端输出。


#include<stdio.h>
int main(void)
{
    int c;
    while ((c = getc(stdin)) != EOF)
        if (putc(c, stdout) == EOF)
            fprintf(stderr, "Error occur when put char\n");
    if (ferror(stdin))
        fprintf(stderr, "input error\n");
    return 0;
}

容易出错的地方:

1、int c; 写成char c;这个是要出错的。因为getchar(), getc()返回的都是整数,如果写成char会造成截断。造成值等于-1。

2、while时要判断是否是EOF。

3、输出的返回值要判断是否是EOF

4、用ferror来判断输入是否出错了。

5、返回值是0;正常刷新缓冲区。

你可能感兴趣的:(一个简单的C程序)