


      FREAD(3S)                   (UNIX 5.0)                  FREAD(3S)



      NAME
           fread, fwrite - binary input/output

      SYNTAX
           #include <stdio.h>

           int fread (ptr, size, nitems, stream)
           char *ptr;
           int size, nitems;
           FILE *stream;

           int fwrite (ptr, size, nitems, stream)
           char *ptr;
           int size, nitems;
           FILE *stream;

      DESCRIPTION
           Fread copies, into an array beginning at ptr, nitems items
           of data from the named input stream, where an item of data
           is a sequence of bytes (not necessarily terminated by a null
           byte) of length size.  Fread stops appending bytes if an
           end-of-file or error condition is encountered while reading
           stream, or if nitems items have been read.  Fread leaves the
           file pointer in stream, if defined, pointing to the byte
           following the last byte read if there is one.  Fread does
           not change the contents of stream.

           Fwrite appends at most nitems items of data from the the
           array pointed to by ptr to the named output stream.  Fwrite
           stops appending when it has appended nitems items of data or
           if an error condition is encountered on stream.  Fwrite does
           not change the contents of the array pointed to by ptr.

           The variable size is typically sizeof(*ptr) where the
           pseudo-function sizeof specifies the length of an item
           pointed to by ptr.  If ptr points to a data type other than
           char it should be cast into a pointer to char.

      SEE ALSO
           read(2), write(2), fopen(3S), getc(3S), gets(3S),
           printf(3S), putc(3S), puts(3S), scanf(3S).

      DIAGNOSTICS
           Fread and fwrite return the number of items read or written.
           If nitems is non-positive, no characters are read or written
           and 0 is returned by both fread and fwrite.









      Page 1                                         (73 A2 02MTA REV1)



