Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想在 C 中创建一个文件描述符,我将在代码中指定其值。我有一个整数变量,它指定要创建的文件描述符的值。例如,我可能需要一个值为 5 的文件描述符,然后将其与名为 "sample.dat" 的文件相关联。
fd = open ("sample.dat", O_RDONLY);打开文件
fd = open ("sample.dat", O_RDONLY);
dup2 (fd, 5);并将文件描述符复制fd到描述符编号 5
dup2 (fd, 5);
fd
现在你可以做read (5, buffer, BUFF_MAX);或者也可以fd用来访问同一个文件。如果不需要,则需要显式关闭fd它。
read (5, buffer, BUFF_MAX);
正如@Arkadiy 所说,请参阅man dup2详细信息。
man dup2
你需要 dup2()
http://linux.die.net/man/2/dup