当stdout被重定向到文件时fflush是不够的

时间:2017-08-04 13:44:18

标签: c stdout fflush freopen

我有一个C程序,有9个printf调用,我需要它在远程服务器上运行几天。所以我决定将stdout重定向到一个文件以检查进度:

FILE *foutput=freopen("output.txt","w",stdout);

经过一些调试后,我找到了this并使用了

fflush(foutput)

从我在链接中看到的内容,所有缓冲对我来说都是正确的(我在每次打印结束时都有一个换行命令):就我希望打印有效执行并查找他们在output.txt上,但这没有发生。

可能是什么问题?

我希望你注意以下工作:

  foutput=freopen("output.txt", "w", stdout);
  printf("first print\n");
  fflush(foutput);
  fclose(foutput);

但我希望每次都避免拨打freopen

0 个答案:

没有答案