fwrite

fwrite

fwrite() 是 C 語言標準庫中的一個檔案處理函式,功能是向指定的檔案中寫入若干數據塊,如成功執行則返回實際寫入的數據塊數目。該函式以二進制形式對檔案進行操作,不局限於文本檔案。

基本信息

功能

C語言函式,向檔案寫入一個數據塊

用法

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)函式同步。

程式示例

示例一:

示例二:

示例三:

稱為myfile.bin的一個檔案被創建並存儲到它的緩衝區的內容。為了簡單起見,該緩衝區包含Char元素,但它可以包含任何其他類型。.

sizeof(buffer)位元組數組的長度(在這種情況下,它是三個,因為數組有三個元素,每次一個位元組)。

示例四:

相關詞條

相關搜尋

熱門詞條

聯絡我們