我想在C中创建一个文件描述符,其值将在代码中指定。 我有一个整数变量,它指定要创建的文件描述符的值。例如,我可能需要一个值为5的文件描述符,然后将其与名为“sample.dat”的文件相关联。
答案 0 :(得分:4)
你需要dup2()
答案 1 :(得分:3)
fd = open ("sample.dat", O_RDONLY);
打开文件
dup2 (fd, 5);
并将文件描述符fd
复制到描述符编号5
现在您可以执行read (5, buffer, BUFF_MAX);
或使用fd
访问同一文件。如果您不需要,则需要明确关闭fd
。
@Arkadiy告诉man dup2
了解详情。