【发布时间】:2016-04-27 19:47:57
【问题描述】:
int kr=0;
int ss =0;
while ((kr=getchar()) != EOF){
if(kr != '\n')
{
ss++;
}
printf("%d\n",ss);
}
使用此代码,printf 一直在等待,直到我按下回车键,然后像这样同时打印所有连续的 ss 值
。有人可以解释这种行为吗?
【问题讨论】:
-
printf 与等待行为无关……它是 getchar()。但首先尝试清理您的项目并重建它......然后再试一次。
-
有没有办法禁用 getchar() 的输入缓冲流?