6.23.15 getwchar Function
Obtains wide character input from the stdin
stream.
Include
<wchar.h>
Prototype
wint_t getwchar(void);
Return Value
Returns the next available wide character as a wchar_t
converted to a
wint_t
. The WEOF
wide character is returned if the
end-of-file indicator for the stream is set, if the stream is at end-of-file, if a read error
occurs, or if an encoding error occurs.
Remarks
This function advances the associated file position indicator for stdin
(if
defined) and sets the end-of file indicator when the end-of-file is reached. If a read error
occurs, the error indicator for stdin
is set and can be checked with the
ferror()
function. If an encoding error occurs (which includes too few
bytes), errno
is set to the value of the EILSEQ
macro.
Example
#include <wchar.h>
#include <stdio.h>
int main(void)
{
wint_t wc;
while( ! feof(stdin)) {
wc = getwchar();
if(iswprint(wc))
wprintf(L"char read: %lc\n", wc);
}
}
Example Input
Present on stdin
.
hi there
Example Output
char read: h
char read: i
char read:
char read: t
char read: h
char read: e
char read: r
char read: e