GETC_UNLOCKED(3)

NAME
getc_unlocked, _getc_unlocked_r - non-thread-safe version of getc (macro)

SYNOPSIS

#include <stdio.h>

int getc_unlocked(FILE *fp);

#include <stdio.h>

int _getc_unlocked_r(FILE *fp);

DESCRIPTION

getc_unlocked is a non-thread-safe version of getc declared in stdio.h. getc_unlocked may only safely be used within a scope protected by flockfile() (or ftrylockfile()) and funlockfile(). These functions may safely be used in a multi-threaded program if and only if they are called while the invoking thread owns the ( FILE *) object, as is the case after a successful call to the flockfile() or ftrylockfile() functions. If threads are disabled, then getc_unlocked is equivalent to getc.

The _getc_unlocked_r function is simply the reentrant version of get_unlocked which passes an additional reentrancy structure pointer argument: ptr.

RETURNS

See getc.

PORTABILITY

POSIX 1003.1 requires getc_unlocked. getc_unlocked may be implemented as a macro, so arguments should not have side-effects.

Supporting OS subroutines required: close, fstat, isatty, lseek, read, sbrk, write.