EOF为什么不能终止循环?
以下是一个简单的程序,将输入的字符在屏幕上回显:#include"stdio.h"
main()
{
int c;
while((c=getchar())!=EOF)
putchar(c);
c=getchar();
}
问题:在运行以上程序时,虽然输入了“EOF”(Ctrl+Z),但是按回车键后,程序并没有结束,而是继续处于等待输入的状态。如果把EOF换成'#',输入“#”并按按回车键后,程序就结束了。不知是何道理?
2012-08-29 10:43
2012-08-29 10:47
2012-08-29 20:12
2012-08-29 21:18