fgetwc - get a wide-character code from a stream


     #include <stdio.h>
     #include <wchar.h>

     wint_t fgetwc(FILE*stream);


     The  fgetwc()  function  obtains  the  next  character   (if
     present)  from  the  input stream pointed to by stream, con-
     verts that to  the  corresponding  wide-character  code  and
     advances  the  associated  file  position  indicator for the
     stream (if defined).

     If an error occurs, the resulting value of the file position
     indicator for the stream is indeterminate.

     The fgetwc() function may mark the  st_atime  field  of  the
     file  associated  with stream for update. The st_atime field
     will be marked for update by the first successful  execution
     of  fgetwc(),  fgetc(3C),  fgets(3C), fgetws(3C), fread(3C),
     fscanf(3C), getc(3C), getchar(3C),  gets(3C),  or  scanf(3C)
     using  stream that returns data not supplied by a prior call
     to ungetc(3C) or ungetwc(3C).


     Upon successful completion the fgetwc() function returns the
     wide-character  code  of  the  character read from the input
     stream pointed to by stream converted to a type wint_t.

     If the stream is at end-of-file, the  end-of-file  indicator
     for the stream is set and fgetwc() returns WEOF.

     If a read error occurs, the error indicator for  the  stream
     is set, fgetwc() returns WEOF and sets errno to indicate the


     The fgetwc() function will fail if data  needs  to  be  read

           The O_NONBLOCK flag is set  for  the  file  descriptor
           underlying  stream and the process would be delayed in
           the fgetwc() operation.

     EBADF The file descriptor underlying stream is not  a  valid
           file descriptor open for reading.

     EINTR The read operation was terminated due to  the  receipt
           of a signal, and no data was transferred.

     EIO   A physical I/O error has occurred, or the  process  is
           in  a background process group attempting to read from
           its controlling terminal and  either  the  process  is
           ignoring or blocking the SIGTTIN signal or the process
           group is orphaned.

           The file is a regular file and an attempt was made  to
           read  at  or beyond the offset maximum associated with
           the corresponding  stream.

     The fgetwc() function may fail if:

           Insufficient storage space is available.

     ENXIO A request was made of a non-existent  device,  or  the
           request was outside the capabilities of the device.

           The data obtained from the input stream does not  form
           a valid character.


     The ferror(3C) or feof(3C) functions must be used to distin-
     guish  between  an error condition and an end-of-file condi-


     See attributes(5) for descriptions of the  following  attri-

    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    | MT-Level                    | MT-Safe with exceptions     |
    | CSI                         | Enabled                     |


     feof(3C),  ferror(3C),  fgetc(3C),  fgets(3C),   fgetws(3C),
     fopen(3C),  fread(3C),  fscanf(3C),  getc(3C),  getchar(3C),
     gets(3C), scanf(3C), setlocale(3C), ungetc(3C), ungetwc(3C),

Man(1) output converted with man2html