Defined in header <wchar.h> | ||
---|---|---|
wint_t ungetwc( wint_t ch, FILE *stream ); | (since C95) |
If ch
does not equal WEOF
, pushes the wide character ch
into the input buffer associated with the stream stream
in such a manner that subsequent read operation from stream
will retrieve that wide character. The external device associated with the stream is not modified.
Stream repositioning operations fseek
, fsetpos
, and rewind
discard the effects of ungetwc
.
If ungetwc
is called more than once without an intervening read or repositioning, it may fail (in other words, a pushback buffer of size 1 is guaranteed, but any larger buffer is implementation-defined). If multiple successful ungetwc
were performed, read operations retrieve the pushed-back wide characters in reverse order of ungetwc
.
If ch
equals WEOF
, the operation fails and the stream is not affected.
A successful call to ungetwc
clears the end of file status flag feof
.
A successful call to ungetwc
on a stream (whether text or binary) modifies the stream position indicator in unspecified manner but guarantees that after all pushed-back wide characters are retrieved with a read operation, the stream position indicator is equal to its value before ungetwc
.
ch | - | wide character to be put back |
stream | - | file stream to put the wide character back to |
On success ch
is returned.
On failure WEOF
is returned and the given stream remains unchanged.
puts a character back into a file stream (function) |
|
(C95) | gets a wide character from a file stream (function) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/c/io/ungetwc