fread(3) ввод/вывод из двоичного потока

Other Alias

fwrite

ОБЗОР

#include <stdio.h>


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

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

ОПИСАНИЕ

Функция fread() считывает nmemb единиц данных (размер каждого size байт) из потока, на который указывает stream, и сохраняет их в расположение, на которое указывает ptr.

Функция fwrite() записывает nmemb единиц данных (размер каждого size байт) в поток, на который указывает stream, получая их из расположения, на которое указывает ptr.

Неблокирующие аналоги смотрите в unlocked_stdio(3).

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При успешном выполнении функции fread() и fwrite() возвращают количество считанных или записанных единиц. Это количество равно количеству переданных байт только, если значение size равно 1. В случае ошибки или по достижении конца файла возвращается меньшее количество единиц (или ноль).

Функция fread() не отличает возникновение ошибки и достижения конца файла; для точного определения необходимо вызывать функции feof(3) и ferror(3).

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).
ИнтерфейсАтрибутЗначение
fread(), fwrite() безвредность в нитяхбезвредно (MT-Safe)

СООТВЕТСТВИЕ СТАНДАРТАМ

POSIX.1-2001, POSIX.1-2008, C89.