在C語言中,fwrite
函數用于將指定數量的數據塊寫入到文件中。
函數原型如下:
size_t fwrite(const void *ptr, size_t size, size_t count, FILE *stream);
參數說明:
ptr
:指向要寫入的數據塊的指針。
size
:每個數據塊的大小(以字節為單位)。
count
:要寫入的數據塊的數量。
stream
:指向要寫入數據的文件指針。
函數返回值為成功寫入的數據塊的數量。如果返回的值小于count
,則可能表示寫入過程中發生了錯誤。
以下是一個使用fwrite
函數將數據塊寫入文件的示例:
#include <stdio.h>
int main() {
FILE *file = fopen("data.txt", "wb"); // 以二進制方式打開文件
if (file != NULL) {
int data[] = {1, 2, 3, 4, 5};
size_t elements_written = fwrite(data, sizeof(int), sizeof(data)/sizeof(int), file);
if (elements_written == sizeof(data)/sizeof(int)) {
printf("寫入成功!\n");
} else {
printf("寫入失敗!\n");
}
fclose(file);
}
return 0;
}
在上面的示例中,我們首先使用fopen
函數打開一個名為"data.txt"的文件,并以二進制寫入方式打開。然后,我們定義了一個名為data
的整型數組,并使用fwrite
函數將整型數組寫入到文件中。最后,我們使用fclose
函數關閉文件。
請注意,在使用fwrite
函數寫入數據時,我們需要確保指定的數據塊大小和數量是正確的。在上面的示例中,我們使用了sizeof
操作符來獲取整型數據塊的大小,并計算了要寫入的數據塊的數量。