open()返回新文件描述符posix

杰恩·科普

我必须在posix中设置open()的返回值。如Linux手册页所述,如何返回“新文件描述符”:

返回值

 open(), openat(), and creat() return the new file descriptor, or -1
 if an error occurred (in which case, errno is set appropriately).

编辑:感谢goldilocks!我没有朝正确的方向看。我正在做的是我正在纠正此系统调用的返回值。显然,它返回了错误的消息。

Abrixas2

要打开文件,请使用以下结构:

int fd;
if ((fd = open(path, flags)) < 0) {
    /* An error occurred, the reason is in errno */
    int _errno = errno; /* Save errno value */
    fprintf(stderr, "Failed opening file '%s': %s\n", path, strerror(_errno));
    return;
}
/* The file was successfully opened */

因此,您只有一个返回值,通常是文件描述符。如果为-1,则表明发生了错误。发生的错误存储在errno变量中(您可以通过将其包含errno.h到源文件中来获取变量)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用选择并接受来启动新文件描述符

来自分类Dev

DBus:返回文件描述符

来自分类Dev

read() 在有效的文件描述符上返回错误的文件描述符

来自分类Dev

AIX open():文件描述符为零(!?)

来自分类Dev

从`std :: io :: File :: open`获取文件描述符

来自分类Dev

C文件描述符在打开时返回-1

来自分类Dev

socket()返回std :: thread内的文件描述符1

来自分类Dev

在C中通过引用返回并传递文件描述符

来自分类Dev

是否需要关闭接受返回文件描述符

来自分类Dev

打开功能不返回文件描述符

来自分类Dev

Perl选择返回“错误的文件描述符”错误

来自分类Dev

如何在C中返回文件描述符

来自分类Dev

文件描述符位置

来自分类Dev

文件描述符0

来自分类Dev

文件描述符重复

来自分类Dev

读取文件描述符

来自分类Dev

关闭文件描述符

来自分类Dev

exec的文件描述符

来自分类Dev

泄漏文件描述符

来自分类Dev

读取文件描述符

来自分类Dev

共享文件描述符

来自分类Dev

“文件描述符”中“描述符”的词源

来自分类Dev

POSIX 中是否有空文件描述符值?

来自分类Dev

文件描述符与文件名

来自分类Dev

如何使文件描述符的别名可读

来自分类Dev

exec是否保留文件描述符

来自分类Dev

无法从pyhandle获取文件描述符

来自分类Dev

重定向文件描述符

来自分类Dev

Bash脚本-stdout文件描述符?