getwc(3) [osx man page]
GETWC(3) BSD Library Functions Manual GETWC(3) NAME
fgetwc, getwc, getwchar -- get next wide character from input stream LIBRARY
Standard C Library (libc, -lc) SYNOPSIS
#include <stdio.h> #include <wchar.h> wint_t fgetwc(FILE *stream); wint_t getwc(FILE *stream); wint_t getwchar(void); DESCRIPTION
The fgetwc() function obtains the next input wide character (if present) from the stream pointed at by stream, or the next character pushed back on the stream via ungetwc(3). The getwc() function acts essentially identically to fgetwc(). The getwchar() function is equivalent to getwc() with the argument stdin. Extended locale versions of these functions are documented in getwc_l(3). See xlocale(3) for more information. RETURN VALUES
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). SEE ALSO
ferror(3), fopen(3), fread(3), getc(3), getwc_l, putwc(3), stdio(3), ungetwc(3) STANDARDS
The fgetwc(), getwc(), and getwchar() functions conform to ISO/IEC 9899:1999 (``ISO C99''). BSD
March 3, 2004 BSD
Check Out this Related Man Page
getwc(3) Library Functions Manual getwc(3) NAME
getwc, getwc_unlocked, fgetwc, getwchar - Get a wide character from an input stream LIBRARY
Standard C Library (libc) SYNOPSIS
#include <stdio.h> #include <wchar.h> wint_t getwc( FILE *stream); wint_t getwc_unlocked( FILE *stream); wint_t fgetwc( FILE *stream); #include <wchar.h> wint_t getwchar(void); STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: fgetwc(), getwc(), getwchar(): XSH5.0 Refer to the standards(5) reference page for more information about industry standards and associated tags. PARAMETERS
Specifies an input stream from a file. DESCRIPTION
The fgetwc() function gets the next character from the input stream specified by the stream parameter, converts it to a wide-character code, and advances the associated file position indicator for the stream. If an error occurs, the file position indicator is indetermi- nate. This function also marks the st_atime field of the file associated with stream for update. The getwc() function performs the same function as fgetwc() but can be implemented as a macro on implementations that conform to X/Open standards. The getwchar() function gets the next wide character from the standard input stream. This function is equivalent to getwc(stdin). The getwc_unlocked() function is functionally identical to the getwc() function, except that getwc_unlocked() may be safely used only within a scope that is protected by the flockfile() and funlockfile() functions used as a pair. The caller must ensure that the stream is locked before these functions are used. On return from calls to the preceding functions, applications should use ferror() and feof() to distinguish between error and end-of-file conditions. NOTES
Because getwc() can be implemented as a macro, applications should not use it with a stream argument that is an expression with side effects (for example, getwc(*f++)). The fgetwc() function is recommended over getwc() for reading characters from a stream associated with a file. If the value returned by the getwchar() function is stored into a variable of type wchar_t and then compared to the macro WEOF (defined as type wint_t in the wchar.h header file), the comparison may never succeed. RETURN VALUES
These functions return either the resultant wide-character code or, for error and end-of-file conditions, the constant WEOF (wide-character End-Of-File). ERRORS
If any of the following conditions occur, the fgetwc(), getwc(), getwc_unlocked(), and getwchar(), functions set errno to the corresponding value: The O_NONBLOCK flag is set for the file descriptor underlying the stream parameter and the process would be delayed by the read operation. The file descriptor underlying the stream parameter is not a valid file descriptor open for reading. The data obtained from the input stream does not form a valid wide character in the current locale. The read operation was interrupted by a signal that was caught, and no data was transferred. One of the following errors occurred: The call is attempting to read from the process's controlling terminal and either the process is ignoring or blocking the SIGTTIN signal or the process group is orphaned. A physical I/O error occurred. This condition is defined starting with XSH Issue 4, Version 2. Insufficient memory is available for the operation. The device associated with stream either does not exist or cannot handle the request. The file is a regular file and an attempt was made to read at or beyond the offset maximum associated with the corresponding stream. RELATED INFORMATION
Functions: fopen(3), fread(3), fgetws(3), getc(3), gets(3), putwc(3), scanf(3), wscanf(3) Standards: standards(5) delim off getwc(3)