积极答复者
C语言的一个小问题

问题
-
关于下面这段代码 根据输入的字符数打印
比如我在控制台编译这个程序 输入: os + 回车
会打印出
1
1
1
然后光标又停在那等待输入了 。。 按照我的理解 它在打印完上面三个1以后 应该打印一个 EOF 0 (这一句printf("EOF %d\n",c);)才对
但是问题就是 它并没有打印出 EOF 0 而是继续停在那等待我下一次输入 这个是为什么?
不是说while(c = getchar()!=EOF) 的getchar()!=EOF判断为FALSE的时候就跳出循环了么?
还请知道的朋友赐教 谢谢!
-------------
#include <stdio.h>
#include <stdlib.h>int main(int argc, char *argv[])
{
int c;
while(c = getchar()!=EOF) {
printf("%d\n",c);
}
printf("EOF %d\n",c);system("PAUSE");
return 0;
}
--------------------