Прототип функции 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) — длина массива в байтах (в данном случае это три, так как массив состоит из трех элементов, каждый элемент занимает один байт).
Комментарии