Provided by: manpages-ru-dev_4.21.0-2_all bug

ИМЯ

       fclose - закрывает поток

LIBRARY

       Standard C library (libc, -lc)

СИНТАКСИС

       #include <stdio.h>

       int fclose(FILE *stream);

ОПИСАНИЕ

       Функция fclose() сбрасывает (flushes) поток, указанный в stream (записывает все буферизированные выходные
       данные с помощью fflush(3)) и закрывает связанный с ним файловый дескриптор.

       The behaviour of fclose()  is undefined if the stream parameter is an illegal pointer, or is a descriptor
       already passed to a previous invocation of fclose().

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       При  успешном  выполнении  возвращается  нулевое  значение.  В  противном случае возвращается EOF и errno
       присваивается код ошибки. В любом случае, дальнейшие попытки доступа (включая ещё один вызов fclose())  к
       потоку приведут к неопределенному результату.

ОШИБКИ

       EBADF  В stream указан неверный дескриптор файла.

       Функция fclose() при ошибках может установить errno в значение, соответствующее ошибкам функций close(2),
       write(2) или fflush(3).

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).
       ┌─────────────────────────────────────────────────────────────────────┬──────────────────────┬──────────┐
       │ ИнтерфейсАтрибутЗначение │
       ├─────────────────────────────────────────────────────────────────────┼──────────────────────┼──────────┤
       │ fclose()                                                            │ Безвредность в нитях │ MT-Safe  │
       └─────────────────────────────────────────────────────────────────────┴──────────────────────┴──────────┘

СТАНДАРТЫ

       POSIX.1-2001, POSIX.1-2008, C99.

ЗАМЕЧАНИЯ

       Заметим,  что  fclose() сбрасывает буферы только пользовательского пространства, заданные библиотекой Си.
       Чтобы гарантировать, что данные действительно физически сохранены на диске, буферы ядра также должны быть
       сохранены, например, с помощью вызова sync(2) или fsync(2).

СМ. ТАКЖЕ

       close(2), fcloseall(3), fflush(3), fileno(3), fopen(3), setbuf(3)

ПЕРЕВОД

       Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>,  Dmitry
       Bolkhovskikh <d20052005@yandex.ru>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

       Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3
       или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

       Если  вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо
       на man-pages-ru-talks@lists.sourceforge.net.

Linux man-pages 6.03                           29 декабря 2022 г.                                      fclose(3)