NAME

     fread, fwrite - binary stream input/output


SYNOPSIS

     #include <stdio.h>

     size_t fread( void *ptr,  size_t  size,  size_t  nmemb  FILE
     *stream));

     size_t fwrite( const void *ptr, size_t  size,  size_t  nmemb
     FILE *stream));


DESCRIPTION

     The function fread reads nmemb elements of data,  each  size
     bytes  long,  from  the stream pointed to by stream, storing
     them at the location given by ptr.

     The function fwrite writes nmemb elements of data, each size
     bytes  long,  to  the stream pointed to by stream, obtaining
     them from the location given by ptr.


RETURN VALUES

     fread and fwrite return the  number  of  items  successfully
     read or written (i.e., not the number of characters).  If an
     error occurs, or the  end-of-file  is  reached,  the  return
     value is a short item count (or zero).

     fread does not distinguish between  end-of-file  and  error,
     and  callers  must  use  feof(3)  and ferror(3) to determine
     which occurred.


SEE ALSO

     feof(3), ferror(3), read(2),


STANDARDS

     The functions fread and fwrite conform to  ANSI  C3.159-1989
     (``ANSI C'').