Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
GETC(3) 		     Library Functions Manual			 GETC(3)

NAME
     fgetc,  getc,  getc_unlocked,  getchar,  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
     getc_unlocked(FILE *stream);

     int
     getchar(void);

     int
     getchar_unlocked(void);

     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(stdin).

     The  getw()  function  obtains  the  next	int (if present) from the stream
     pointed at by stream.

     The getc_unlocked() and  getchar_unlocked()  functions  are  equivalent  to
     getc()  and  getchar()  respectively, except that the caller is responsible
     for locking the stream with flockfile(3) before calling them.  These  func-
     tions  may  be  used  to  avoid the overhead of locking the stream for each
     character, and to avoid input being dispersed among multiple threads  read-
     ing from the same stream.

RETURN VALUES
     If  successful,  these  routines  return the next requested object from the
     stream.  Character values are returned as an unsigned char converted to  an
     int.   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 remem-
     bered, even on a terminal, and all subsequent attempts to read will  return
     EOF until the condition is cleared with clearerr(3).

SEE ALSO
     ferror(3), flockfile(3), fopen(3), fread(3), getwc(3), putc(3), ungetc(3)

STANDARDS
     The  fgetc(),  getc(), and getchar() functions conform to ISO/IEC 9899:1990
     ("ISO C90").  The getc_unlocked() and getchar_unlocked() functions  conform
     to IEEE Std 1003.1-2001 ("POSIX.1").

HISTORY
     The  getc()  and  getw()  functions appeared in a similar form in Version 1
     AT&T UNIX; and were integrated into stdio in Version 7 AT&T UNIX; getchar()
     in Version 4 AT&T UNIX; and fgetc() in Version 7 AT&T UNIX.

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.

FreeBSD ports 15.1		  April 4, 2020 			 GETC(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=getc&sektion=3&manpath=FreeBSD+15.1-RELEASE+and+Ports>

home | help