| GETC(3) | Library Functions Manual | GETC(3) |
fgetc, getc,
getchar, getc_unlocked,
getchar_unlocked, getw
— get next character or word from input
stream
Standard C Library (libc, -lc)
#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);
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.
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).
ferror(3), flockfile(3), fopen(3), fread(3), ftrylockfile(3), funlockfile(3), putc(3), ungetc(3)
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”).
The getc() and
getw() functions appeared in
Version 1 AT&T UNIX.
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.
| September 2, 2019 | NetBSD 11.0 |