FPURGE(3) Linux Programmer s Manual FPURGE(3)

NAME fpurge, __fpurge - purge a stream

SYNOPSIS /* unsupported */ #include <stdio.h>

int fpurge(FILE *stream);

/* supported */ #include <stdio.h> #include <stdio_ext.h>

void __fpurge(FILE *stream);

DESCRIPTION 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 also fflush(3).

The function __fpurge() does precisely the same, but without returning a value.

RETURN VALUE Upon successful completion fpurge() returns 0. On error, it returns -1 and sets errno appropriately.

ERRORS EBADF stream is not an open stream.

CONFORMING TO 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.

NOTES Usually it is a mistake to want to discard input buffers.

SEE ALSO fflush(3), setbuf(3), stdio_ext(3)

COLOPHON This page is part of release 3.22 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/.

2001-12-15 FPURGE(3)