【问题标题】:C++ library to replace the standard cstdio替换标准 cstdio 的 C++ 库
【发布时间】:2014-02-25 14:11:43
【问题描述】:

我想要一个功能,当我的应用程序崩溃时,已经写入的日志保存在日志文件中。但是使用cstdio 库中的fopen()/fwrite() 似乎不能做到这一点。所以当我的应用程序崩溃时,日志文件是 0KB。我想知道是否有任何文件处理库可以做到这一点?例如。提升?

【问题讨论】:

  • 你试过flush吗?但除此之外,这要么有点宽泛,要么是“寻找工具、库等”。

标签: c++ file-io windows-7


【解决方案1】:

Classic XY question。解决方案是确保您的日志文件被刷新,而不是切换到一些新的 API 以希望它能解决问题。

查找fflush;当您想确保将写入提交到磁盘时调用它。

【讨论】:

    【解决方案2】:

    在每行输出后调用fflush 应该会将内容放入文件中。但它会显着降低输出速度。

    您还可以检查您的操作系统的本机 I/O 调用,但这不是可移植的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-24
      • 1970-01-01
      • 2021-10-27
      • 1970-01-01
      • 2021-05-05
      • 2017-01-20
      • 2018-08-12
      • 2017-04-08
      相关资源
      最近更新 更多