fread(3S) fread(3S)
NAME
fread, fwrite - binary input/output
SYNOPSIS
#include <stdio.h>
size_t fread(void *ptr, size_t size, size_t nitems, FILE *stream);
size_t fwrite(const void *ptr, size_t size, size_t nitems,
FILE *stream);
DESCRIPTION
fread reads into an array pointed to by ptr up to nitems items
of data from stream, where an item of data is a sequence of
bytes (not necessarily terminated by a null byte) of length
size. fread stops reading bytes if an end-of-file or error
condition is encountered while reading stream, or if nitems
items have been read. fread increments the data pointer in
stream to point to the byte following the last byte read if
there is one. fread does not change the contents of stream.
fread returns the number of items read.
fwrite writes to the named output stream at most nitems items
of data from the array pointed to by ptr, where an item of
data is a sequence of bytes (not necessarily terminated by a
null byte) of length size. fwrite stops writing when it has
written 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. fwrite increments the data-
pointer in stream by the number of bytes written. fwrite
returns the number of items written.
If size or nitems is zero, then fread and fwrite return a
value of 0 and do not effect the state of stream.
The ferror or feof routines must be used to distinguish
between an error condition and end-of-file condition.
Errors
If an error occurs, the error indicator for stream is set.
REFERENCES
abort(3C), exit(2), fclose(3S), fopen(3S), fprintf(3S),
fscanf(3S), getc(3S), gets(3S), lseek(2), putc(3S), puts(3S),
read(2), stdio(3S), write(2)
Copyright 1994 Novell, Inc. Page 1