FPURGE(3) Linux Programmer's Manual FPURGE(3)
fpurge, __fpurge - purge a stream
/* unsupported */
int fpurge(FILE *stream);
/* supported */
void __fpurge(FILE *stream);
The function fpurge() clears the buffers of the given stream. For out-
put streams this discards any unwritten output. For input streams this
discards any input read from the underlying object but not yet obtained
via getc(3); this includes any text pushed back via ungetc(3). See
The function __fpurge() does precisely the same, but without returning
Upon successful completion fpurge() returns 0. On error, it returns -1
and sets errno appropriately.
EBADF stream is not an open stream.
These functions are non-standard and not portable. The function
fpurge() was introduced in 4.4BSD and is not available under Linux.
The function __fpurge() was introduced in Solaris, and is present in
glibc 2.1.95 and later.
Usually it is a mistake to want to discard input buffers.
fflush(3), setbuf(3), stdio_ext(3)
This page is part of release 3.05 of the Linux man-pages project. A
description of the project, and information about reporting bugs, can
be found at http://www.kernel.org/doc/man-pages/.