【发布时间】:2018-11-10 03:36:47
【问题描述】:
我目前正在使用 Linux 中的旧代码,并遇到一段代码,它使用 fcntl.h 标头中的 creat 函数来创建新文件或重写现有文件。此代码假定返回值低于零作为错误,高于零作为有效文件描述符,并且不考虑零。
零是一个有效的文件描述符并表示函数调用是否成功? Documentations说:
成功完成后,该函数应打开文件并返回一个非负整数,表示编号最小的未使用文件描述符。否则,应返回 -1 并设置 errno 以指示错误。
【问题讨论】:
-
“Non-negative”包含0,所以有效。