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(3) 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 nonlocking counterparts, see 
unlocked_stdio(3).
RETURN VALUE¶
The 
fgetwc() function returns the next wide-character from the stream, or
  
WEOF. In the event of an error, 
errno is set to indicate the
  cause.
ERRORS¶
Apart from the usual ones, there is
  - EILSEQ
 
  - The data obtained from the input stream does not form a valid
    character.
 
C99, POSIX.1-2001.
NOTES¶
The behavior of 
fgetwc() depends on the 
LC_CTYPE category of the
  current locale.
In the absence of additional information passed to the 
fopen(3) 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¶
fgetws(3), 
fputwc(3), 
ungetwc(3), 
unlocked_stdio(3)
COLOPHON¶
This page is part of release 3.74 of the Linux 
man-pages project. A
  description of the project, information about reporting bugs, and the latest
  version of this page, can be found at
  
http://www.kernel.org/doc/man-pages/.