FGETWC(3)                 (2015-08-08)                  FGETWC(3)

     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 evalu-
          ate 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.

     ATTRIBUTES
          For an explanation of the terms used in this section, see
          attributes(7).  allbox; lbw17 lb lb l l l.
          Interface Attribute Value T{ fgetwc(), getwc() T}   Thread
          safety  MT-Safe

     CONFORMING TO
          POSIX.1-2001, POSIX.1-2008, C99.

     NOTES
          The behavior of fgetwc() depends on the LC_CTYPE category of
          the current locale.

     Page 1                         GNU              (printed 5/18/22)

     FGETWC(3)                 (2015-08-08)                  FGETWC(3)

          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 5.10 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 https://www.kernel.org/doc/man-pages/.

     Page 2                         GNU              (printed 5/18/22)