Man page - fclose(3)

Packages contains this manual

Available languages:

en fr pt_BR es pl ja ru ro zh_TW zh_CN de

Manual

fclose

НАИМЕНОВАНИЕ
БИБЛИОТЕКА
ОБЗОР
ОПИСАНИЕ
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
ОШИБКИ
АТРИБУТЫ
СТАНДАРТЫ
ИСТОРИЯ
ПРИМЕЧАНИЯ
СМОТРИТЕ ТАКЖЕ
ПЕРЕВОД

НАИМЕНОВАНИЕ

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

БИБЛИОТЕКА

Стандартная библиотека языка C ( 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).

Image grohtml-608952-1.png

СТАНДАРТЫ

C11, POSIX.1-2008.

ИСТОРИЯ

C89, POSIX.1-2001.

ПРИМЕЧАНИЯ

Заметим, что 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> и Kirill Rekhov <krekhov.dev@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков .