【发布时间】:2020-07-15 11:07:08
【问题描述】:
为Getchar()函数重写程序以区分EOF和错误。也就是说getchar()在出错期间和EOF文件末尾都返回,需要区分这一点,输入不应该是通过FILE STREAM和处理putchar()函数错误。
#include <stdio.h>
int main() {
long nc;
nc = 0;
while (getchar() != EOF)
++nc;
printf ("%ld\n", nc);
}
【问题讨论】:
-
在
EOF返回后检查feof或ferror。 -
但是 feof 和 ferror 不只是针对 FILE STREAM 吗?
-
使用
stdin代替文件。 -
@PP 虽然我并没有真正质疑您的重复重复,但在 this 问题中还有一个额外的问题是必须使用
stdin作为@987654327 @ 参数,这在任何一个欺骗目标中都不明显。