Создать дескриптор файла
Я хочу создать дескриптор файла в C, значение которого я укажу в коде. У меня есть целочисленная переменная, которая определяет значение дескриптора файла, который будет создан. Например, мне может понадобиться дескриптор файла, значение которого равно 5, и позже связать его с файлом с именем "sample.dat" .
2 ответа
fd = open ("sample.dat", O_RDONLY);
открыть файл
dup2 (fd, 5);
и скопируйте дескриптор файла fd
в дескриптор № 5
теперь вы можете сделать read (5, buffer, BUFF_MAX);
или также использовать fd
чтобы получить доступ к тому же файлу. Вам нужно закрыть fd
явно, если вам это не нужно.
Как @Аркадий рассказал man dup2
для деталей.