相关疑难解决方法(0)

除非换行符在格式字符串中,为什么printf在调用后不会刷新?

printf除非换行符在格式字符串中,为什么在调用后不刷新?这是POSIX的行为吗?我怎么可能printf每次都立即冲洗?

c printf flush

509
推荐指数
10
解决办法
33万
查看次数

printf不打印到屏幕

如果我尝试在Windows 7上的Cygwin下运行以下简单代码,

#include <stdio.h>
int main() {
int i1, i2, sums;

printf( "Enter first integer\n" );
scanf( "%d", &i1 );

printf( "Enter second integer\n" );
scanf( "%d", &i2 );

sums = i1 + i2;
printf( "Sum is %d\n", sums );

return 0;
}
Run Code Online (Sandbox Code Playgroud)

它编译(通过gcc)没有问题,但是当我尝试执行它时,第一个语句("输入第一个整​​数")没有打印到终端,我必须输入两个连续的数字(例如3和4)在我得到之前

3
4
Enter first integer
Enter second integer
Sum is 7
Run Code Online (Sandbox Code Playgroud)

任何人都可以向我解释这里发生了什么.这在MinGW下非常有效.

c cygwin stdio

5
推荐指数
3
解决办法
2万
查看次数

标签 统计

c ×2

cygwin ×1

flush ×1

printf ×1

stdio ×1