我一直在尝试使用 fflush 来制作进度条。为了测试 fflush,我写了下面的小代码。
当我取消注释“sleep(1);”时,它可以正常工作 但是如果它仍然被注释掉,它会以一种意想不到的方式工作。它打印第一个破折号,等待而不是打印所有剩余的 9 个并退出。
我不明白为什么它会有所作为。
int main()
{
int f,j;
j =0;
for(f=0;f<10;f++)
{
printf("-");
fflush(stdout);
while(j++<1000000000);
//sleep(1);
}
}