fread(3S)fread(3S)NAMEfread(), fwrite() - buffered binary input/output to a stream file
copies, into an array pointed to by ptr, up to 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.
stops appending bytes if an end-of-file or error condition is encoun‐
tered while reading stream, or if nitems items have been read. leaves
the file pointer in stream, if defined, pointing to the byte following
the last byte read if there is one. does not change the contents of
appends at most nitems items of data from the array pointed to by ptr
to the named output stream. stops appending when it has appended
nitems items of data or if an error condition is encountered on stream.
does not change the contents of the array pointed to by ptr.
The argument size is typically where the pseudo-function specifies the
length of an item pointed to by ptr.
and buffered binary input/output to a stream file.
After or is applied to a stream, the stream becomes byte-oriented (see
and return the number of items read or written. If size or nitems is
0, no characters are read or written and 0 is returned.
The value returned will be less than nitems only if a read error or
end-of-file is encountered.
When the file corresponding to an open stream gets extended after the
end-of-file is reached, any subsequent calls to will succeed and the
end-of-file indicator will remain set. However, in the UNIX2003 stan‐
dards environment (see standards(5)), this function will return zero
and the end-of-file indicator will remain set.
The or functions must be used to distinguish between an error condition
and an end-of-file condition.
Refer to getc(3S) for a description of errors returned by
Refer to putc(3S) for a description of errors returned by
and are obsolescent interfaces supported only for compatibility with
existing DCE applications. New multithreaded applications should use
SEE ALSOread(2), write(2), fopen(3S), flockfile(3S), getc(3S), gets(3S),
printf(3S), putc(3S), puts(3S), scanf(3S), orientation(5), stan‐
dards(5), thread_safety(5), glossary(9).