Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ getc(3S) — Dell System V Release 4 Issue 2.2

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)               UNIX System V(C Development Set)                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 argument 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 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.



10/89                                                                    Page 1







getc(3S)               UNIX System V(C Development Set)                getc(3S)


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




















































Page 2                                                                    10/89





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