Documentation Archive Developer
Search
ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



UNGETC(3)                BSD Library Functions Manual                UNGETC(3)

NAME
     ungetc -- un-get character from input stream

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <stdio.h>

     int
     ungetc(int c, FILE *stream);

DESCRIPTION
     The ungetc() function pushes the character c (converted to an unsigned
     char) back onto the input stream pointed to by stream.  The pushed-back
     characters will be returned (in reverse order) by subsequent reads on the
     stream.  A successful intervening call to one of the file positioning
     functions (fseek(3), fsetpos(3), or rewind(3)), using the same stream,
     will discard the pushed-back characters.

     Only one character of push-back is guaranteed, but as long as there is
     sufficient memory, an effectively infinite amount of push-back is
     allowed.

     If a character is successfully pushed-back, the end-of-file indicator for
     the stream is cleared.  The file-position indicator is decremented by
     each successful call to ungetc(); if its value was 0 before a call, its
     value is unspecified after the call.

RETURN VALUES
     The ungetc() function returns the character pushed-back after the conver-sion, conversion,
     sion, or EOF if the operation fails.  If the value of the argument c
     character equals EOF, the operation will fail and the stream will remain
     unchanged.

SEE ALSO
     fseek(3), getc(3), setvbuf(3), ungetwc(3)

STANDARDS
     The ungetc() function conforms to ISO/IEC 9899:1990 (``ISO C90'').

BSD                              June 4, 1993                              BSD