Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ fwrite(3S) — HP-UX 10.20

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

read(2)

write(2)

fopen(3S)

flockfile(3S)

getc(3S)

gets(3S)

printf(3S)

putc(3S)

puts(3S)

scanf(3S)

fread(3S)

NAME

fread(), fread_unlocked(), fwrite(), fwrite_unlocked() − buffered binary input/output to a stream file

SYNOPSIS

#include <stdio.h>

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

size_t fread_unlocked(

void *ptr,
 size_t size,
 size_t nitems,
 FILE *stream);

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

size_t fwrite_unlocked(

const void *ptr,
 size_t size,
 size_t nitems,
 FILE *stream);

DESCRIPTION

fread() copies, into an array pointed to by 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 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 argument size is typically sizeof(∗ptr) where the pseudo-function sizeof specifies the length of an item pointed to by ptr.

fread_unlocked() and fwrite_unlocked() are identical to fread() and fwrite() respectively except they do not perform any internal locking of the stream for multi-thread applications.  The _unlocked routines can be used by multi-thread applications which have already used flockfile() to acquire a mutual exclusion lock for the stream (see flockfile(3S)).

SEE ALSO

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

RETURN VALUE

fread(), fread_unlocked(), fwrite(), and fwrite_unlocked() return the number of items read or written.  If size or nitems is non-positive, no characters are read or written and 0 is returned by fread(), fread_unlocked(), fwrite(), and fwrite_unlocked(). 

STANDARDS CONFORMANCE

fread(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1, ANSI C

fwrite(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1, ANSI C

Hewlett-Packard Company  —  HP-UX Release 10.20:  July 1996

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026