Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
FREAD(3)	       FreeBSD Library Functions Manual		      FREAD(3)

NAME
     fread, fread_unlocked, fwrite, fwrite_unlocked -- binary stream in-
     put/output

LIBRARY
     Standard C	Library	(libc, -lc)

SYNOPSIS
     #include <stdio.h>

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

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

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

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

DESCRIPTION
     The function fread() reads	nmemb objects, each size bytes long, from the
     stream pointed to by stream, storing them at the location given by	ptr.

     The function fwrite() writes nmemb	objects, each size bytes long, to the
     stream pointed to by stream, obtaining them from the location given by
     ptr.

     The fread_unlocked() and fwrite_unlocked()	functions are equivalent to
     fread() and fwrite() respectively,	except that the	caller is responsible
     for locking the stream with flockfile(3) before calling them.  These
     functions may be used to avoid the	overhead of locking the	stream and to
     prevent races when	multiple threads are operating on the same stream.

RETURN VALUES
     The functions fread() and fwrite()	advance	the file position indicator
     for the stream by the number of bytes read	or written.  They return the
     number of objects read or written.	 If an error occurs, or	the end-of-
     file is reached, the return value is a short object count (or zero).

     The function fread() does not distinguish between end-of-file and error,
     and callers must use feof(3) and ferror(3)	to determine which occurred.
     The function fwrite() returns a value less	than nmemb only	if a write er-
     ror has occurred.

SEE ALSO
     read(2), write(2)

STANDARDS
     The functions fread() and fwrite()	conform	to ISO/IEC 9899:1990
     ("ISO C90").

FreeBSD	13.0		       January 23, 2020			  FreeBSD 13.0

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | SEE ALSO | STANDARDS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=fread&sektion=3&manpath=FreeBSD+13.0-RELEASE>

home | help