Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ stdio(3S) — DG/UX 5.4R3.00

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

open(2)

close(2)

lseek(2)

pipe(2)

read(2)

write(2)

ctermid(3S)

cuserid(3S)

fclose(3S)

ferror(3S)

fopen(3S)

fread(3S)

fseek(3S)

getc(3S)

gets(3S)

popen(3S)

printf(3S)

putc(3S)

puts(3S)

scanf(3S)

setbuf(3S)

system(3S)

tmpfile(3S)

tmpnam(3S)

ungetc(3S)



stdio(3S)                      DG/UX 5.4R3.00                      stdio(3S)


NAME
       stdio - standard buffered input/output package

SYNOPSIS
       #include <stdio.h>

       FILE *stdin, *stdout, *stderr;

DESCRIPTION
       The 3S entries in this manual constitute an efficient, user-level I/O
       buffering scheme.  The in-line macros getc(3S) and putc(3S) handle
       characters quickly.  The macros getchar and putchar, and the higher-
       level routines fgetc, fgets, fprintf, fputc, fputs, fread, fscanf,
       fwrite, gets, getw, printf, puts, putw, and scanf all use or act as
       if they use getc and putc; they can be freely intermixed.

       A file with associated buffering is called a stream [see intro(3)]
       and is declared to be a pointer to a defined type FILE.  fopen
       creates certain descriptive data for a stream and returns a pointer
       to designate the stream in all further transactions.  Normally, there
       are three open streams with constant pointers declared in the
       <stdio.h> header file and associated with the standard open files:

              stdin     standard input file
              stdout    standard output file
              stderr    standard error file

       The following symbolic values in <unistd.h> define the file
       descriptors that will be associated with the C-language stdin, stdout
       and stderr when the application is started:

              STDINFILENO     Standard input value, stdin. It has the value
                               of 0.
              STDOUTFILENO    Standard output value, stdout. It has the
                               value of 1.
              STDERRFILENO    Standard error value, stderr. It has the
                               value of 2.

       A constant null designates a null pointer.

       An integer-constant EOF (-1) is returned upon end-of-file or error by
       most integer functions that deal with streams (see the individual
       descriptions for details).

       An integer constant BUFSIZ specifies the size of the buffers used by
       the particular implementation.

       An integer constant FILENAMEMAX specifies the size needed for an
       array of char large enough to hold the longest file name string that
       the implementation guarantees can be opened.

       In the ELF environments the integer constant FOPENMAX specifies the
       minimum number of files that the implementation guarantees can be
       open simultaneously.  The number of files beyond this number you will



Licensed material--property of copyright holder(s)                         1




stdio(3S)                      DG/UX 5.4R3.00                      stdio(3S)


       be able to open depends upon available memory and your kernel
       configuration.  For details on configuring the kernel refer to
       Managing the DG/UX System.

       In the COFF environments the integer constant FOPENMAX specifies the
       maximum number of files that the implementation guarantees can be
       open simultaneously.  This value is currently 64.

       Any program that uses this package must include the header file of
       pertinent macro definitions, as follows:

              #include <stdio.h>

       The functions and constants for all 3S entries in this manual are
       declared in the header file and need no further declaration.  The
       constants and the following "functions" are implemented as macros.
       Don't redeclare these names: getc, getchar, putc, putchar, ferror,
       feof, clearerr, and fileno.

       There are also function versions of getc, getchar, putc, putchar,
       ferror, feof, clearerr, and fileno.

       Output streams, with the exception of the standard error stream
       stderr, are by default buffered if the output refers to a file and
       line-buffered if the output refers to a terminal.  The standard error
       output stream stderr is by default unbuffered, but use of freopen
       [see fopen(3S)] will cause it to become buffered or line-buffered.
       When an output stream is unbuffered, information is queued for
       writing on the destination file or terminal as soon as written; when
       it is buffered, many characters are saved up and written as a block.
       When it is
       line-buffered, each line of output is queued for writing on the
       destination terminal as soon as the line is completed (that is, as
       soon as a new-line character is written or terminal input is
       requested).  setbuf or setvbuf [both described in setbuf(3S)] may be
       used to change the stream's buffering strategy.

SEE ALSO
       open(2), close(2), lseek(2), pipe(2), read(2), write(2), ctermid(3S),
       cuserid(3S), fclose(3S), ferror(3S), fopen(3S), fread(3S), fseek(3S),
       getc(3S), gets(3S), popen(3S), printf(3S), putc(3S), puts(3S),
       scanf(3S), setbuf(3S), system(3S), tmpfile(3S), tmpnam(3S),
       ungetc(3S), Managing the DG/UX System.

DIAGNOSTICS
       Invalid stream pointers will usually cause problems, possibly
       including program termination.  The description for each function
       lists its possible error conditions.









Licensed material--property of copyright holder(s)                         2


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