在Linux系统调用中,fcntl内部的F_DUPFD有什么用途
我试图理解这行代码的含义: int-dfd强>在Linux系统调用中,fcntl内部的F_DUPFD有什么用途,c,linux,posix,C,Linux,Posix,我试图理解这行代码的含义: int-dfd fd2=fcntl(dfd,F_DUPFD)它旨在将fd2设置为引用与dfd相同的打开文件记录的另一个文件描述符 应该有第三个参数,即返回的最低可接受文件描述符。由于缺少第三个参数,调用可能会做任何事情。正确的呼叫可能如下所示: fd2 = fcntl(dfd, F_DUPFD, 0); 从: F_DUPFD(int) 查找编号最小的可用文件描述符,该描述符大于或等于arg,并使其成为fd的副本。这与使用指定描述符的dup2(2)不同 成功时,将返回
fd2=fcntl(dfd,F_DUPFD)它旨在将
fd2
设置为引用与dfd
相同的打开文件记录的另一个文件描述符
应该有第三个参数,即返回的最低可接受文件描述符。由于缺少第三个参数,调用可能会做任何事情。正确的呼叫可能如下所示:
fd2 = fcntl(dfd, F_DUPFD, 0);
从:
F_DUPFD
(int)
查找编号最小的可用文件描述符,该描述符大于或等于arg
,并使其成为fd
的副本。这与使用指定描述符的dup2(2)不同
成功时,将返回新的描述符
有关更多详细信息,请参见dup(2)
它旨在将
fd2
设置为引用与dfd
相同的打开文件记录的另一个文件描述符
应该有第三个参数,即返回的最低可接受文件描述符。由于缺少第三个参数,调用可能会做任何事情。正确的呼叫可能如下所示:
fd2 = fcntl(dfd, F_DUPFD, 0);
从:
F_DUPFD
(int)
查找编号最小的可用文件描述符,该描述符大于或等于arg
,并使其成为fd
的副本。这与使用指定描述符的dup2(2)不同
成功时,将返回新的描述符
有关更多详细信息,请参见dup(2)
是的,dup是fcntl通用函数的快捷方式。是的,dup是fcntl通用函数的快捷方式。