Я пытаюсь использовать fflush, чтобы сделать индикатор выполнения. Чтобы проверить fflush, я написал небольшой код ниже.fflush и while loop
Он работает так, как предполагалось, когда я раскомментировал «сон (1)»; , но он работает неожиданным образом, если остается закомментированным. Он печатает первую тире, ждет, чем печатает все оставшиеся 9 из них и завершает работу.
Я не понимаю, почему это имеет значение.
int main()
{
int f,j;
j =0;
for(f=0;f<10;f++)
{
printf("-");
fflush(stdout);
while(j++<1000000000);
//sleep(1);
}
}
Спасибо, что был тупой ошибкой :) – yam
Я надеюсь, что вы на самом деле не планируя использовать 'while (j ++ <1000000000)' вместо вызова 'sleep'. – jamesdlin