C Programing Language里字符计数的代码是不是有歧义
程序代码:
#include <stdio.h>
/* 统计输入的字符数; 版本1 */
main()
{
long nc;
nc = 0;
while (getchar() != EOF)
++nc;
printf("%ld", nc);
}
最后得到的程序输入几个字符,如“abcsd”并回车
结果没有任何反应
据说是因为‘回车’也!= EOF
才导致的无法正常结束循环
不过众说纷纭,希望有人能详细解释一下错误的原因和EOF的一些细节
[此贴子已经被作者于2017-4-25 23:29编辑过]






