當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C語言 fwrite用法及代碼示例


C語言stdio頭文件(stdio.h)中fwrite函數的用法及代碼示例。

用法:

size_t fwrite ( const void * ptr, size_t size, size_t count, FILE * stream );
將數據塊寫入流
寫一個數組數數元素,每個元素的大小為尺寸字節,來自於所指向的內存塊ptr到當前位置

這個位置指示器流的字節數按寫入的字節總數前進。

在內部,該函數解釋由指向的塊ptr好像是一個數組(size*count)類型元素unsigned char,並將它們順序寫入stream仿佛fputc每個字節都被調用。

參數

ptr
指向要寫入的元素數組的指針,將其轉換為const void*
size
每個要寫入的元素的大小(以字節為單位)。
size_t是無符號整數類型。
count
元素數量,每個元素的大小為尺寸個字節。
size_t是無符號整數類型。
stream
指向一個指針FILE指定輸出流的對象。

返回值

返回成功寫入的元素總數。
如果此數字與數數參數,寫入錯誤導致該函數無法完成。在這種情況下,錯誤指示(ferror)將被設置為
如果有尺寸或者數數為零,函數返回零,並且錯誤指示保持不變。
size_t是無符號整數類型。

示例

/* fwrite example : write buffer */
#include <stdio.h>

int main ()
{
  FILE * pFile;
  char buffer[] = { 'x' , 'y' , 'z' };
  pFile = fopen ("myfile.bin", "wb");
  fwrite (buffer , sizeof(char), sizeof(buffer), pFile);
  fclose (pFile);
  return 0;
}


名為myfile.bin被創建並將緩衝區的內容存儲到其中。為簡單起見,緩衝區包含char元素,但可以包含任何其他類型。
sizeof(buffer)是數組的長度(以字節為單位)(在本例中為3,因為數組具有三個元素,每個元素一個字節)。

也可以看看

fread
從流中讀取數據塊(函數 )
fprintf
將格式化的數據寫入流(函數 )
putc
將字符寫入流(函數 )
fputc
將字符寫入流(函數 )

相關用法


注:本文由純淨天空篩選整理自C標準庫大神的英文原創作品 C fwrite function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。