【发布时间】:2013-07-25 13:44:28
【问题描述】:
嗨,我下面是一个带有 while 1 的简单代码,但是当我执行它时,首先它应该在 printf 中打印第一行,然后休眠 1 秒,然后打印第二行,它应该继续执行但在这里我在终端中什么也没有得到,几秒钟后突然所有的东西都被打印出来了,然后又回到睡眠状态。到底发生了什么我不明白。
int main(void)
{
while(1)
{
printf("hello before sleep");
sleep(1);
printf("hello after sleep");
}
}
但是在上面的相同代码中,如果我在 printf 中的每一行之后使用 \n,它可以正常工作,正如我预期的那样。为什么会这样?
【问题讨论】:
-
将
\n添加到您的字符串中。请参阅stackoverflow.com/questions/1716296/… 了解原因。