C語言的fread函數用于從文件中讀取數據。它的原型如下:
size_t fread(void *ptr, size_t size, size_t count, FILE *stream);
參數說明:
ptr:指向數據保存位置的指針。
size:每個數據項的大小,以字節為單位。
count:要讀取的數據項的個數。
stream:指向FILE對象的指針,該對象是要讀取的文件指針。
返回值:
成功讀取的數據項個數,如果發生錯誤或到達文件末尾,返回值可能少于count。
使用示例:
#include <stdio.h>
int main() {
FILE *file;
int data[5];
// 打開文件
file = fopen("example.bin", "rb");
if (file == NULL) {
printf("無法打開文件\n");
return 1;
}
// 讀取數據
size_t read_count = fread(data, sizeof(int), 5, file);
if (read_count < 5) {
printf("讀取失敗\n");
return 1;
}
// 輸出讀取的數據
for (int i = 0; i < 5; i++) {
printf("%d ", data[i]);
}
// 關閉文件
fclose(file);
return 0;
}
以上示例中,我們打開一個名為"example.bin"的二進制文件,并讀取5個整數數據到data數組中。在讀取完成后,我們遍歷數組并將數據輸出到控制臺。最后關閉文件。
需要注意的是,fread函數在讀取文件時,會根據size和count的乘積確定要讀取的總字節數。所以在使用fread函數之前,需要確保目標數組或指針有足夠的空間來存儲讀取的數據。