fwrite

fwrite

編程語言函數
fwrite() 是 C 語言标準庫中的一個文件處理函數,功能是向指定的文件中寫入若幹數據塊,如成功執行則返回實際寫入的數據塊數目。該函數以二進制形式對文件進行操作,不局限于文本文件[1]。相關參數:ptr-- 這是指向要被寫入的元素數組的指針。size-- 這是要被寫入的每個元素的大小,以字節為單位。nmemb-- 這是元素的個數,每個元素的大小為 size 字節。stream-- 這是指向 FILE 對象的指針,該 FILE 對象指定了一個輸出流。
  • 中文名:
  • 外文名:fwrite
  • 别名:
  • 表達式:
  • 提出者:
  • 适用領域:
  • 類别:編程語言函數
  • 應用:C語言
  • 頭文件:stdio.h
  • 功能:寫入數據

函數原型

size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream)

參數

ptr-- 這是指向要被寫入的元素數組的指針

size-- 這是要被寫入的每個元素的大小,以字節為單位。

nmemb-- 這是元素的個數,每個元素的大小為 size 字節。

stream-- 這是指向 FILE 對象的指針,該 FILE 對象指定了一個輸出流。

功能

把ptr所指向的數組中的數據寫入到給定流stream中。

返回值

如果成功,該函數返回一個 size_t 對象,表示元素的總數,該對象是一個整型數據類型。如果該數字與 nmemb 參數不同,則會顯示一個錯誤。

用法

size_t fwrite(const void* buffer, size_t size, size_t count, FILE* stream);

返回值:返回實際寫入的數據塊數目

(1)buffer:是一個指針,對fwrite來說,是要獲取數據的地址

(2)size:要寫入内容的單字節數;

3)count:要進行寫入size字節的數據項的個數;

(4)stream:目标文件指針;

(5)返回實際寫入的數據項個數count。

說明:寫入到文件的哪裡? 這個與文件的打開模式有關,如果是w+,則是從file pointer指向的地址開始寫,替換掉之後的内容,文件的長度可以不變,stream的位置移動count個數;如果是a+,則從文件的末尾開始添加,文件長度加大。

fseek對此函數有作用,但是fwrite函數寫到用戶空間緩沖區,并未同步到文件中,所以修改後要将内存與文件同步可以用fflush(FILE *fp)函數同步。

相關詞條

相關搜索

其它詞條