我有这个简单的代码"在int中的printinterval
sleep(printinterval/3);
displayPrint(); //// just some printing func
sleep(printinterval/3);
displayPrint();
sleep(printinterval-2*(int)(printinterval/3));
displayPrint();
Run Code Online (Sandbox Code Playgroud)
问题是它不能以正确的方式做延迟,跳过1次睡眠
但
sleep(printinterval/3);
printf("\n");
displayPrint(); //// just some printing func
printf("\n");
sleep(printinterval/3);
printf("\n");
displayPrint();
printf("\n");
sleep(printinterval-2*(int)(printinterval/3));
printf("\n");
displayPrint();
Run Code Online (Sandbox Code Playgroud)
奇迹般有效
有任何想法吗?谢谢 :)
编辑:thx的帮助发现这种方式来解决它
fflush(stdout); // Will now print everything in the stdout buffer
Run Code Online (Sandbox Code Playgroud)
thx