c - 什么时候使用 fopen 而不是 open?

标签 c file-io fopen

我通过测试没有发现任何差异。

决定这个的关键是什么?

最佳答案

fopen 是任何 C 环境都应该提供的可移植接口(interface)。此外,它的结果是一个缓冲流 (FILE*),可以与方便的 stdio 函数一起使用。

open 是一个特定于 Unix/POSIX 的接口(interface)。它的结果是一个裸(无缓冲)文件描述符,必须与低级系统调用一起使用。它确实允许对 I/O 进行更细粒度的控制(请参阅 POSIX standard 中的标志列表),因此有时您可能想要打开 一个文件,然后也许 fdopen它得到 stdio 和缓冲。

关于c - 什么时候使用 fopen 而不是 open?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6531813/

相关文章:

c - 如何在应用程序运行时在 Windows 中使用 MSDN 函数记录时区更改

java - 最好将某些内容存储在内存中还是尝试逐行写入文件?

c++ - Debian 8.1 Jessie 中的 g++ errno_t 和 fopen_s 错误

file-io - 创建用于测试文件访问的大型 csv 文件

php - 如何在 PHP 中通过 Fibers 使用多个异步 fread?

c++ - C++程序中打开的文件数

c++ - 如何检查 AVX intrinsic __m256 的 inf

c - char 数组的长度(存储 "int"值的位置)

c++ - 在 Linux 上以编程方式为 gdb 在 C 或 C++ 代码中设置断点

python - 如何确定 Python 中 gzip 文件的内容长度?