嗨,我下面是一个带有 while 1 的简单代码,但是当我执行它时,首先它应该在 printf 中打印第一行,然后休眠 1 秒,然后打印第二行,它应该继续这样做,但我不这样做'在终端中没有得到任何东西,几秒钟后突然所有东西都被打印出来,然后又回到睡眠状态。到底发生了什么我不明白。
int main(void)
{
while(1)
{
printf("hello before sleep");
sleep(1);
printf("hello after sleep");
}
}
但是在上面的相同代码中,如果我在 printf 中的每一行之后使用 \n 它可以正常工作,就像我预期的那样。为什么会这样?