【发布时间】:2015-10-12 13:00:25
【问题描述】:
代码:
#include <stdio.h>
int main()
{
long cn=1;
char ch;
while((ch=getchar())!=EOF)
{
printf("%ld\t%c\n",cn++,ch);
}
}
当我输入单词“secret”并按回车时,它显示计数为 7 而不是 6,为什么?
【问题讨论】:
-
EOF必须不同于任何字符!因此getchar返回int,而不是char。启用编译器警告并认真对待它们!