fwrite函數是C語言中的一個文件操作函數,用于將數據塊寫入文件中。
其基本用法如下:
size_t fwrite(const void *buffer, size_t size, size_t count, FILE *stream);
參數說明:
buffer:指向要寫入的數據的指針。
size:每個數據項的大小(以字節為單位)。
count:要寫入的數據項的個數。
stream:指向FILE對象的指針,表示要寫入的文件。
函數返回值為實際成功寫入的數據項個數。
示例:
#include <stdio.h>
int main() {
FILE *file = fopen("data.txt", "w");
if (file == NULL) {
printf("文件打開失敗\n");
return 1;
}
int data[] = {1, 2, 3, 4, 5};
size_t num = fwrite(data, sizeof(int), 5, file);
printf("成功寫入 %lu 個數據項\n", num);
fclose(file);
return 0;
}
以上示例中,首先通過fopen函數打開一個文件,然后將一個包含5個整數的數組data寫入該文件,最后使用fclose函數關閉文件。
注意事項:
fwrite函數一次寫入多個數據項,效率較高,但要確保數據塊的大小和個數與實際需求一致。
fwrite函數寫入二進制數據,如果需要寫入文本數據,建議使用fputs或fprintf函數。
在使用fwrite函數寫入數據之前,必須確保文件已經以寫入模式打開。