Kor*_*gay 3 c linux standards posix language-lawyer
我将给出GNU C 库文档中的一个示例:
13.1 打开和关闭文件
本节介绍使用文件描述符打开和关闭文件的原语。open 和 creat 函数在头文件 fcntl.h 中声明,而 close 函数在 unistd.h 中声明。
我的问题是:
可以unistd.h并被fcntl.h视为标准C吗?据我所知,它们应该是Posix 标准的一部分?
我们可以说 C 标准库 = Posix 函数 + C API 吗?我很困惑,因为C 标准库的维基百科页面不包含unistd.h它,但 GNU C 库文档包含它?
不,unistd.h,fcntl.h等不是标准C。
一般来说,标准 C 不包含处理低级文件操作的函数。例如,fopen、fread、 和fwrite是标准 C 库的一部分。虽然 POSIX open, read,write函数不是标准 C.