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

FreeBSD Manual Pages

  
 
  

home | help
FREAD(3)		    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  responsi-
       ble  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 er-
       ror, and	callers	must use feof(3) and ferror(3) to determine which  oc-
       curred.	 The function fwrite() returns a value less than nmemb only if
       a write error has occurred.

SEE ALSO
       read(2),	write(2)

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

HISTORY
       The  functions  fread()	and  fwrite() first appeared in	Version	7 AT&T
       UNIX.

FreeBSD	13.2			 April 2, 2022			      FREAD(3)

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

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

home | help