Linux Man на русском

  User    Syst    Libr    Device    Files    Other    Admin  



   fpurge - вычищает поток

fpurge(3) вычищает поток

Other Alias

__fpurge


ОБЗОР


/* не поддерживается */
#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() делает то же самое, но не возвращает никакого значения.


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

При успешном выполнении fpurge() возвращает 0. При ошибке возвращается -1 и переменная errno устанавливается соответствующим образом.


ОШИБКИ

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


АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).

Интерфейс Атрибут Значение
__fpurge() безвредность в потоках: безвредно (MT-Safe race:stream)


СООТВЕТСТВИЕ СТАНДАРТАМ

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


ЗАМЕЧАНИЯ

Как правило, отбрасывать содержимое буферов ввода является ошибкой.