Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ getc(3s) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

fclose(3S)

ferror(3S)

fopen(3S)

fread(3S)

gets(3S)

putc(3S)

scanf(3S)

stdio(3S)

ungetc(3S)



getc(3S)                LIBRARY FUNCTIONS                getc(3S)



NAME
     getc, getchar, fgetc, getw - get character or  word  from  a
     stream

SYNOPSIS
     #include <stdio.h>

     int getc (FILE *stream);

     int getchar (void);

     int fgetc (FILE *stream);

     int getw (FILE *stream);

DESCRIPTION
     getc returns the next character (i.e., byte) from the  named
     input stream [see intro(3)] as an unsigned char converted to
     an int.  It also moves the file pointer, if  defined,  ahead
     one character in stream.  getchar is defined as getc(stdin).
     getc and getchar are macros.

     fgetc behaves like getc, but is a  function  rather  than  a
     macro.   fgetc runs more slowly than getc, but it takes less
     space per invocation and its name can be passed as an  argu-
     ment to a function.

     getw returns the next word (i.e., integer)  from  the  named
     input  stream.  getw increments the associated file pointer,
     if defined, to point to the next word.  The size of  a  word
     is  the  size  of  an  integer  and  varies  from machine to
     machine.  getw assumes no special alignment in the file.

SEE ALSO
     fclose(3S),  ferror(3S),  fopen(3S),  fread(3S),   gets(3S),
     putc(3S), scanf(3S), stdio(3S), ungetc(3S).

DIAGNOSTICS
     These functions return the constant EOF  at  end-of-file  or
     upon  an error and set the EOF or error indicator of stream,
     respectively.  Because EOF is a valid integer, ferror should
     be used to detect getw errors.

NOTES
     If the integer value returned by getc, getchar, or fgetc  is
     stored  into  a character variable and then compared against
     the integer constant EOF, the comparison may never  succeed,
     because sign-extension of a character on widening to integer
     is implementation dependent.   The  macro  version  of  getc
     evaluates  a  stream  argument  more than once and may treat
     side effects incorrectly.  In  particular,  getc(*f++)  does
     not  work sensibly.  Use fgetc instead.  Because of possible



                                                                1





getc(3S)                LIBRARY FUNCTIONS                getc(3S)



     differences in word length and byte ordering, files  written
     using putw are implementation dependent, and may not be read
     using getw on a different processor.

     Functions exist for all the above defined  macros.   To  get
     the  function  form, the macro name must be undefined (e.g.,
     undefgetc).
















































                                                                2



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026