C ++ fwrite () - Стандартна бібліотека C ++

Функція fwrite () в C ++ записує вказану кількість символів у заданий вихідний потік.

прототип fwrite ()

 size_t fwrite (const void * буфер, size_t size, size_t count, FILE * потік);

В fwrite()запису функції розраховувати кількість об'єктів, кожен з розміру розміру байтів в заданому вихідному потоці.

Це схоже на виклик розміру fputc () для запису кожного об’єкта. Залежно від кількості записаних символів індикатор положення файлу збільшується. Отримане значення показника позиції файлу для потоку є невизначеним, якщо під час читання файлу виникає помилка.

  • Якщо об’єкти не можна тривіально скопіювати, поведінка не визначена.
  • Якщо розмір або кількість дорівнюють нулю, виклик до fwriteповерне нуль, і ніяких інших дій не виконується.

Це визначається у файлі заголовка.

Параметри fwrite ()

  • буфер: вказівник на блок пам'яті, вміст якого записаний.
  • size: Розмір кожного об’єкта в байтах.
  • count: Кількість об’єктів для читання.
  • потік: файловий потік для запису даних.

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 (), коли кількість або розмір дорівнює нулю

 #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

Цікаві статті...