for(j = 1; j < 11; j++)
{
printf("%ds ",j);
sleep(1);
}
我原本预计此代码会打印“1s 2s 3s ... 10s”,它们之间有1秒的间隔,但它会在10秒后打印所有数字。我应该怎么解决? 我正在研究ubuntu。
答案 0 :(得分:2)
stdout
流已缓冲,因此如果您想立即获得结果,则需要使用fflush()
刷新该缓冲区:
for (j = 1; j < 11; j++) {
printf("%ds ", j);
fflush(stdout);
sleep(1);
}
答案 1 :(得分:0)