1
这是我的代码[注:我使用Eclipse为C/C++ Windows平台]为什么printf在预期的时候不被调用?
#include <stdio.h>
#include<stdlib.h>
int main(void) {
int num;
printf("Enter a number:\n");
scanf("%d",&num);
if(num%2==0)
printf("Number is Even");
else
printf("Number is Odd");
return EXIT_SUCCESS;
}
在这里,我必须先输入整数才把printf的叫......我想先调用printf在我输入Integer之前......我在这里做错了什么?
例如这是输出,我得到
6
Enter a number:
Number is Even
和预期产量
Enter a number:
6
Number is Even
是不是'scanf'没有返回,或者最终调用'printf'没有产生输出? –
祝贺发布[MCVE]。具体来说,您正在使用哪种环境。另外,您是使用普通shell还是正在读/写来自文件或管道的输入/输出? – EOF
如果程序不能将'stdin/stdout'识别为“交互式设备”,它将被完全缓冲。在这种情况下,可能会缓存输出,直到遇到对'fflush(stdout)'(或其他函数调用之一)的调用。 – EOF