man.bsd.lv manual page server

Manual Page Search Parameters
UNGETWC(3) Library Functions Manual UNGETWC(3)

ungetwc, ungetwc_lun-get wide character from input stream

library “libc”

#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);

The () 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 () function takes an explicit locale argument, whereas the ungetwc() function uses the current global or per-thread locale.

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.

fseek(3), getwc(3), xlocale(3)

The ungetwc() function conforms to ISO/IEC 9899:1999 (“ISO C99”).

December 26, 2013 DragonFly-5.6.1