Man Linux: Main Page and Category List

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.

       For nonlocking counterparts, see unlocked_stdio(3).

RETURN VALUE

       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.

CONFORMING TO

       C89, POSIX.1-2001.

SEE ALSO

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

COLOPHON

       This  page  is  part of release 3.24 of the Linux man-pages project.  A
       description of the project, and information about reporting  bugs,  can
       be found at http://www.kernel.org/doc/man-pages/.