Используя fdopen()
, fileno()
, можно открыть потоки с существующими файловыми дескрипторами. Однако правильный способ закрыть файл, как только вы открыли его с потоком, это fclose()
указатель FILE
. Как закрыть поток, но сохранить открытый файловый дескриптор?
Это поведение похоже на вызов fflush()
, а затем fileno()
, а затем никогда не использовать указатель FILE
снова, кроме как закрытие. Еще одна проблема заключается в том, что если вы снова fdopen()
, теперь есть несколько указателей FILE
, и вы можете закрыть только один из них.