UNGETC(3) BSD Programmer's Manual UNGETC(3)
ungetc - un-get character from input stream
#include <stdio.h> int ungetc(int c, FILE *stream);
The ungetc() function pushes the character c (converted to an unsigned char) back onto the input stream pointed to by stream. The pushed-backed characters will be returned by subsequent reads on the stream (in reverse order). A successful intervening call, using the same stream, to one of the file positioning functions (fseek(3), fsetpos(3), or rewind(3)) will discard the pushed back characters. One character of push-back is guaranteed, but as long as there is suffi- cient memory, an effectively infinite amount of pushback is allowed. If a character is successfully pushed-back, the end-of-file indicator for the stream is cleared.
The ungetc() function returns the character pushed-back after the conver- sion, or EOF if the operation fails. If the value of the argument c char- acter equals EOF, the operation will fail and the stream will remain un- changed.
fseek(3), getc(3), setvbuf(3)
The ungetc() function conforms to ANSI X3.159-1989 ("ANSI C89"). MirBSD #10-current June 4, 1993 1