If successful, these routines return the next wide-character from the
stream. If the stream is at end-of-file or a read error occurs, the routines return
WEOF. The routines
feof(3) and
ferror(3) must be used to distinguish between end-of-file and error. If an error occurs, the global variable
errno is set to indicate the error. The end-of-file condition is remembered, even on a terminal, and all subsequent attempts to read will return
WEOF until the condition is cleared with
clearerr(3).