getwc(3) -- Linux man page

 

NAME

fgetwc, getwc - read a wide character from a FILE stream  

SYNOPSIS

#include <stdio.h>

#include <wchar.h> wint_t fgetwc(FILE *stream); wint_t getwc(FILE *stream);
 

DESCRIPTION

The fgetwc function is the wide-character equivalent of the fgetc function. It reads a wide character from stream and returns it. If the end of stream is reached, or if ferror(stream) becomes true, it returns WEOF. If a wide character conversion error occurs, it sets errno to EILSEQ and returns WEOF.

The getwc function or macro functions identically to fgetwc. It may be implemented as a macro, and may evaluate its argument more than once. There is no reason ever to use it.

For non-locking counterparts, see unlocked_stdio(3).  

RETURN VALUE

The fgetwc function returns the next wide-character from the stream, or WEOF.  

ERRORS

Apart from the usual ones, there is
EILSEQ
The data obtained from the input stream does not form a valid character.
 

CONFORMING TO

ISO/ANSI C, UNIX98  

NOTES

The behaviour of fgetwc depends on the LC_CTYPE category of the current locale.

In the absence of additional information passed to the fopen call, it is reasonable to expect that fgetwc will actually read a multibyte sequence from the stream and then convert it to a wide character.  

SEE ALSO

fputwc(3), fgetws(3), ungetwc(3), unlocked_stdio(3)