我们可以使用fileno函数从FILE *流中获取文件描述符。是否有一个函数从文件描述符中获取FILE *流而不重新打开文件?
答案 0 :(得分:32)
FILE *fdopen(int fd, const char *mode);
请参阅fdopen(3)
,但它应与fopen(3)
The fdopen() function associates a stream with the existing file
descriptor, fd. The mode of the stream (one of the values "r", "r+",
"w", "w+", "a", "a+") must be compatible with the mode of the file
descriptor. The file position indicator of the new stream is set to
that belonging to fd, and the error and end-of-file indicators are
cleared. Modes "w" or "w+" do not cause truncation of the file. The
file descriptor is not dup’ed, and will be closed when the stream cre‐
ated by fdopen() is closed. The result of applying fdopen() to a
shared memory object is undefined.