POSIX 是否标准化了文件描述符编号?

Eva*_*oll 8 c standard file-descriptors posix

POSIX 是否要求stdin0、1stdoutstderr2 或者这只是一个约定?其他系统是否与该约定不同,或者这是一个安全的假设?

Eva*_*oll 14

似乎它们在 POSIX 规范中是标准化的,

这似乎ISO C是这个使内核分配为所欲为被称为描述符相对静音STDOUTSTDERRSTDIN。但是 POSIX 文档unistd.h明确说明了他们应该在那个级别解决什么问题。

其他操作系统

  • @AustinHemmelgarn:这不完全正确,因为获取/返回文件描述符的函数(`open()`、`close()`、`read()`、`write()` 等)是 POSIX 的一部分,但不是ANSI C 的一部分 - C 等价物是 `fopen()`、`fwrite()` 等。也就是说,人们可能经常遇到的绝大多数 ANSI C 系统不是类 Unix 就是类 Windows,所以在实践中,您所说的通常是正确的:) (2认同)