这个程序中为什么要有fflush()
这个程序中为何要有fflush()?
------解决方案--------------------
printf要把缓冲区的内容打印在屏幕上需要几个条件:我了解的是:
1)遇到'\n';
2)缓冲区满了;
3)fflush(stdout);
#include <stdio.h>
#include <unistd.h>
int main()
{
int i = 0;
while(1)
{
sleep(1);
printf("%d\r", i++);
fflush(stdout); //我认为没有fflush也应该正常工作啊,为什么这里的printf()并没有及时输出结果呢?
}
return 0;
}
------解决方案--------------------
printf要把缓冲区的内容打印在屏幕上需要几个条件:我了解的是:
1)遇到'\n';
2)缓冲区满了;
3)fflush(stdout);