Функция
fflush
принудительно записывает все буферизированные данные в
устройство вывода данных или корректирует поток
stream
посредством определенных для него функций записи.
При этом поток остается открытым.
Если аргумент
stream
указывает на
NULL,
то
fflush
"сбрасывает" данные
всех
потоков, открытых выводящим данным.
ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
При обычном завершении работы возвращается нулевое значение. В противном случае
возвращается
EOF,
а в глобальную переменную
errno
вписывается код соответствующей ошибки.
НАЙДЕННЫЕ ОШИБКИ
EBADF
Поток
stream
просто не открыт или не открыт для записи.
Функция
fflush
при ошибках устанавливает значение переменной
errno
равным значению, определенному для процедуры
write(2).
ЗАМЕЧАНИЯ
Обратите внимание, что
fflush()
"сбрасывает" буферы, определенные в библиотеке C.
Чтобы гарантировать, что данные действительно
физически сохранены на диске, буферы ядра также должны
быть сохранены, например, функциями
sync(2)
или
fsync(2).
СООТВЕТСТВИЕ СТАНДАРТАМ
Функция
fflush
соответствует стандарту ANSI X3.159-1989 (``ANSI C'').