fpurge(3)

ИМЯ
fpurge, __fpurge - вычищает поток

LIBRARY
Standard C library (libc, -lc)

СИНТАКСИС
/* не поддерживается */
#include <stdio.h>

int fpurge(FILE *stream);

/* поддерживается */
#include <stdio.h>
#include <stdio_ext.h>

void  __fpurge(FILE *stream);

ОПИСАНИЕ
Функция fpurge() очищает буферы указанного потока. При этом для потоков вывода отбрасываются все незаписанные данные. Для потоков ввода отбрасывается все данные, полученные от объекта, но ещё не выбранные getc(3), в том числе, любой текст, занесённый с помощью ungetc(3). Смотрите также fflush(3).

Функция __fpurge() делает то же самое, но не возвращает никакого значения.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
Upon successful completion fpurge() returns 0. On error, it returns -1 and sets errno to indicate the error.

ОШИБКИ

EBADF
    Значение stream не является открытым потоком.

АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7).
Интерфейс | Атрибут | Значение
__fpurge() | Безвредность в нитях | MT-Safe race:stream

СТАНДАРТЫ
Эти функции нестандартны и не являются переносимыми. Функция fpurge() появилась из BSD 4.4 и отсутствует в Linux. Функция __fpurge() появилась из Solaris и включена в glibc начиная с версии 2.1.95.

ЗАМЕЧАНИЯ
Как правило, отбрасывать содержимое буферов ввода является ошибкой.

СМ. ТАКЖЕ
fflush(3), setbuf(3), stdio_ext(3)

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

Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 (https://www.gnu.org/licenses/gpl-3.0.html) или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

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