Unix Man (Справочное руководство)

         

FREAD(3S)


FREAD(3S)

НАЗВАНИЕ


fread, fwrite - двоичный ввод/вывод

СИНТАКСИС

#include <stdio.h>

#include <sys/types.h>

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

int fwrite (ptr, size, nitems, stream) char *ptr; int nitems; size_t size; FILE *stream;

ОПИСАНИЕ


Функция fread считывает nitems элементов данных из заданного потока ввода stream в область памяти, на начало которой указывает аргумент ptr. Элементом данных считается последовательность байт (не обязательно завершающаяся нулевым байтом) длины size. Функция fread прекращает считывание байт в случае достижения конца файла, обнаружения ошибки, а также если считаны nitems элементов. После выполнения функции fread текущей позицией в потоке становится байт, следующий за последним прочитанным; содержимое потока stream не изменяется.

Функция fwrite записывает не более nitems элементов данных из области памяти, на начало которой указывает аргумент ptr, в заданный поток вывода stream. В случае обнаружения ошибки fwrite прекращает запись. После выполнения функции fwrite текущей позицией в потоке становится байт, следующий за последним записанным; содержимое записываемого массива не изменяется.

Аргументом size, как правило, является sizeof(*ptr), где псевдофункция sizeof возвращает длину элемента данных, адресуемых указателем ptr. Если аргумент ptr не является указателем на символ, его следует преобразовать к типу (char *).

СМ. ТАКЖЕ


, , , , , , , , , .

ДИАГНОСТИКА


Функции fread и fwrite возвращают фактическое количество прочитанных или записанных элементов данных. Если nitems меньше либо равно нулю, то ничего не считывается и не записывается, и обе функции возвращают нулевое значение.



Содержание раздела