| GETC(3) | Library Functions Manual | GETC(3) | 
NAME
 fgetc, getc, getchar, getc_unlocked, getchar_unlocked, getw — get next character or word from input stream
LIBRARY
 Standard C Library (libc, -lc)
SYNOPSIS
 #include <stdio.h>
int
fgetc(FILE *stream);
int
getc(FILE *stream);
int
getchar();
int
getc_unlocked(FILE *stream);
int
getchar_unlocked();
int
getw(FILE *stream);
 
DESCRIPTION
 The 
fgetc() function obtains the next input character (if present) from the stream pointed at by 
stream, or the next character pushed back on the stream via 
ungetc(3).
The getc() function acts essentially identically to fgetc(), but is a macro that expands in-line.
The getchar() function is equivalent to: getc with the argument stdin.
The getc_unlocked() and getchar_unlocked() functions provide functionality identical to that of getc() and getchar(), respectively, but do not perform implicit locking of the streams they operate on. In multi-threaded programs they may be used only within a scope in which the stream has been successfully locked by the calling thread using either flockfile(3) or ftrylockfile(3), and may later be released using funlockfile(3).
The getw() function obtains the next int (if present) from the stream pointed at by stream.
 
RETURN VALUES
 If successful, these routines return the next requested object from the 
stream. If the stream is at end-of-file or a read error occurs, the routines return 
EOF. 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 
EOF until the condition is cleared with 
clearerr(3).
 
STANDARDS
 The fgetc(), getc() and getchar() functions conform to ANSI X3.159-1989 (“ANSI C89”). The getc_unlocked() and getchar_unlocked() functions conform to ISO/IEC 9945-1:1996 (“POSIX.1”).
BUGS
 Since 
EOF is a valid integer value, 
feof(3) and 
ferror(3) must be used to check for failure after calling 
getw(). The size and byte order of an 
int varies from one machine to another, and 
getw() is not recommended for portable applications.