Функция fwrite () в C ++ записывает указанное количество символов в заданный выходной поток.
fwrite () прототип
size_t fwrite (const void * buffer, size_t size, size_t count, FILE * stream);
В fwrite()
записи функции рассчитывать количество объектов, каждый из размера размера байтов в заданном выходном потоке.
Это похоже на вызов fputc () size times для записи каждого объекта. Индикатор позиции файла увеличивается в соответствии с количеством записанных символов. Результирующее значение индикатора положения файла для потока не определено, если при чтении файла возникает какая-либо ошибка.
- Если объекты нельзя просто скопировать, поведение не определено.
- Если размер или счетчик равны нулю, вызов
fwrite
вернет ноль и никаких других действий не будет.
Это определено в заголовочном файле.
Параметры fwrite ()
- буфер: указатель на блок памяти, содержимое которого записывается.
- size: Размер каждого объекта в байтах.
- count: количество объектов для чтения.
- stream: файловый поток для записи данных.
fwrite () Возвращаемое значение
В fwrite()
Функция возвращает количество объектов , успешно считаны. В случае ошибки возвращаемое значение может быть меньше count.
Пример 1: Как работает функция fwrite ()
#include #include using namespace std; int main() ( int retVal; FILE *fp; char buffer() = "Writing to a file using fwrite."; fp = fopen("data.txt","w"); retVal = fwrite(buffer,sizeof(buffer),1,fp); cout << "fwrite returned " << retVal; return 0; )
Когда вы запустите программу, содержимое буфера будет записано в файл, а результат будет следующим:
fwrite вернул 1
Пример 2: Как работает функция fwrite (), когда значение count или size равно нулю
#include #include using namespace std; int main() ( int retVal; FILE *fp; char buffer() = "Writing to a file using fwrite."; fp = fopen("myfile.txt","w"); retVal = fwrite(buffer,sizeof(buffer),0,fp); cout << "When count = 0, fwrite returned " << retVal << endl; retVal = fwrite(buffer,0,1,fp); cout << "When size = 0, fwrite returned " << retVal << endl; return 0; )
Когда вы запустите программу, вывод будет:
Когда count = 0, fwrite вернул 0 Когда size = 0, fwrite вернул 0