Как получить ФАЙЛ* поток от дескриптора файла?

Мы можем получить дескриптор файла из ФАЙЛА* поток при помощи функции fileno. Существует ли функция для получения ФАЙЛА* поток от дескриптора файла, не вновь открыв файл?

15
задан Gabriel Staples 4 November 2019 в 09:17
поделиться

1 ответ

   FILE *fdopen(int fd, const char *mode);

См. fdopen (3 ) , но он должен быть на той же странице, что и fopen (3) :

Функция fdopen () связывает поток с существующим дескриптор файла, fd . Режим потока (одно из значений «r» , «r +» , «w» , «w +» , «a» , "a +" ) должны быть совместимы с режимом файлового дескриптора. Индикатор положения файла нового потока устанавливается на принадлежащий fd , а ошибка и индикаторы конца файла сброшены. Режимы "w" или "w +" не работают вызвать усечение файла. Дескриптор файла не дублирован , и будет закрыт, когда поток, созданный fdopen () , будет закрыто. Результат применения fdopen () к объекту разделяемой памяти не определено.

34
ответ дан 1 December 2019 в 01:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: