c++ - 文件 IO : c (FILE *) and fgets() vs. c++ istream 和 read() ;功效?效率?

标签 c++ c file optimization io

<分区>

关于使用 c 风格的文件 IO(例如使用 FILE * 和 fgets() 等函数)或 c++ 风格(例如 istreams 或 ifstreams 以及 read() 或 get( ), ETC)。我一直无法找到比较这两种方法的不同功能的主题。什么时候一个比另一个更好

  1. 方便吗?
  2. 效率?
  3. 功效?

我通常使用 C++ 编程,但仍然对我的所有 IO 使用 FILE *,并且我使用 (f)printf 而不是 cout 等。我认为这只是习惯。有没有人有明确的理由偏爱其中一个?或者其中一个是最佳的情况?

最佳答案

如果我想格式化一些东西,我发现 printfcout 更容易使用并且写起来更紧凑。所以我通常不会为 cout 而烦恼。

ifstreamsofstreams 还不错。

不过,恐怕这也是一个习惯问题。我认为没有真正的答案。

关于c++ - 文件 IO : c (FILE *) and fgets() vs. c++ istream 和 read() ;功效?效率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9006919/

相关文章:

c++ - 矩阵的缓存策略和技术

c++ - Eclipse-CDT/C++ : Undefined reference-errors although right . o 文件被创建并传递给链接器

c++ - Oracle OCI、绑定(bind)变量和查询,如 ID IN (1, 2, 3)

tftp传输后比较md5

c++ - 如何缩短多个 && 条件

c++ - Boost spirit编译问题

c - 如何在C中检测未初始化的字符串

java - 强制 java 释放 Java 中的所有文件锁/句柄

windows - 获取文件的扇区位置

java - 通过 java 套接字发送文件