NAME
ungetwc
, ungetwc_l
— un-get wide character from
input stream
LIBRARY
library “libc”
SYNOPSIS
#include <stdio.h>
#include <wchar.h>
wint_t
ungetwc
(wint_t
wc, FILE
*stream);
#include
<xlocale.h>
wint_t
ungetwc_l
(wint_t
wc, FILE *stream,
locale_t locale);
DESCRIPTION
Theungetwc
()
and ungetwc_l
() functions push the wide character
wc (converted to an wchar_t) back
onto the input stream pointed to by stream. The
pushed-backed wide 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 wide characters.
One wide character of push-back is guaranteed, but as long as there is sufficient 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
ungetwc_l
()
function takes an explicit locale argument, whereas
the ungetwc
() function uses the current global or
per-thread locale.
RETURN VALUES
The ungetwc
() and
ungetwc_l
() functions return the wide character
pushed-back after the conversion, or WEOF
if the
operation fails. If the value of the argument c
character equals WEOF
, the operation will fail and
the stream will remain unchanged.
SEE ALSO
STANDARDS
The ungetwc
() function conforms to
ISO/IEC 9899:1999
(“ISO C99”).