Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ getc(3S) — DYNIX/ptx 3.2.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

fopen(3S)

putc(3S)

gets(3S)

scanf(3S)

fread(3S)

ungetc(3S)

GETC(3S)  —  UNIX Programmer’s Manual

NAME

getc, getchar, fgetc, getw − get character or word from stream

SYNOPSIS

#include <stdio.h>

int getc(stream)
FILE ∗stream;

int getchar()

int fgetc(stream)
FILE ∗stream;

int getw(stream)
FILE ∗stream;

DESCRIPTION

Getc returns the next character from the named input stream.

Getchar() is identical to getc(stdin). 

Fgetc behaves like getc, but is a genuine function, not a macro; it may be used to save object text.

Getw returns the next word (in a 32-bit integer on the BALANCE and SYMMETRY Series) from the named input stream. It returns the constant EOF upon end of file or error, but since that is a good integer value, feof and ferror(3S) should be used to check the success of getw. Getw assumes no special alignment in the file. 

The above routines use buffered IO thus if a process uses them the input will be buffered in a per process buffer. If the process exits before reading all of the buffered input, characters still in the buffer will be lost when the per process buffer is deallocated, and data may appear to be lost. This can by avoided through using unbuffered input. 

SEE ALSO

fopen(3S), putc(3S), gets(3S), scanf(3S), fread(3S), ungetc(3S)

DIAGNOSTICS

These functions return the integer constant EOF at end of file or upon read error. 

A stop with message, ‘Reading bad file’, means an attempt has been made to read from a stream that has not been opened for reading by fopen.

BUGS

The end-of-file return from getchar is incompatible with that in UNIX editions 1-6. 

Because it is implemented as a macro, getc treats a stream argument with side effects incorrectly.  In particular, ‘getc(∗f++);’ doesn’t work sensibly. 

7th Edition

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