open() cross-platform 在 C 中吗?
Is open() cross-platform in C?
标题,基本上。 open()
是跨平台的吗?我个人更喜欢将标志与 |
组合在一起,而不是字符串,所以我可以只使用 open()
吗?它可以在任何地方使用 fopen()
吗?
open()
是 POSIX 规范的一部分,因此它可以在任何实现此规范的环境中工作。这包括所有现代风格的 Unix(POSIX 派生自 Unix)以及 Windows。所以你应该能够在你可能遇到的任何平台上使用它,它也提供托管 C 实现(所以不是微控制器,但它可能也没有 fopen()
)。
如果您想要一个 FILE *
然后可以与所有其他 stdio
函数(例如 fprintf()
)一起使用,您可以使用 fdopen()
从open()
.
返回的 FD
标题,基本上。 open()
是跨平台的吗?我个人更喜欢将标志与 |
组合在一起,而不是字符串,所以我可以只使用 open()
吗?它可以在任何地方使用 fopen()
吗?
open()
是 POSIX 规范的一部分,因此它可以在任何实现此规范的环境中工作。这包括所有现代风格的 Unix(POSIX 派生自 Unix)以及 Windows。所以你应该能够在你可能遇到的任何平台上使用它,它也提供托管 C 实现(所以不是微控制器,但它可能也没有 fopen()
)。
如果您想要一个 FILE *
然后可以与所有其他 stdio
函数(例如 fprintf()
)一起使用,您可以使用 fdopen()
从open()
.