Прототип функции fwrite:
size_t fwrite( const void * ptrvoid, size_t size, size_t count, FILE * filestream );
Заголовочный файл
Название | Язык |
---|---|
stdio.h | С |
cstdio | С++ |
Описание
Функция fwrite
записывает массив размером — count
элементов, каждый из которых имеет размер size
байт, в блок памяти, на который указывает ptrvoid
— текущая позиция в потоке.
Индикатор положения потока увеличивается на общее число записанных байтов.
Общее количество записанных байт (count*
).
Параметры:
- ptrvoid
Указатель на массив элементов, которые необходимо записать в файл. - size
Размер в байтах каждого элемента массива. - count
Количество элементов, каждый из которых занимаетsize
байт. - filestream
Указатель на объект типаFILE
, который связан с потоком вывода.
Возвращаемое значение
Общее число элементов, которые успешно были записаны. Возвращаемое значение, в этом случае имеет тип данных size_t
.
Если возвращаемое значение отличается от количества элементов, значит произошла ошибка.
Пример: исходный код программы
//пример использования функции fwrite #include <cstdio> #include <iostream> int main () { FILE * ptrFile = fopen ( "file.txt" , "wb" ); char buffer[] = { 'w' , 't' , 'f' }; fwrite(buffer , 1 , sizeof(buffer) , ptrFile ); // записать в файл содержимое буфера fclose (ptrFile); return 0; }
Пример работы программы
Созданный файл file.txt
хранит содержимое буфера. Для простоты, буфер содержит символы типа char
, но оно может содержать любой другой тип данных.
sizeof(buffer)
— длина массива в байтах (в данном случае это три, так как массив состоит из трех элементов, каждый элемент занимает один байт).
Комментарии