fread函數是C語言中用于讀取文件的函數,其原型為:
size_t fread(void *ptr, size_t size, size_t count, FILE *stream)
該函數從指定的文件流 stream 中讀取數據,并將其存儲到 ptr 指向的內存塊中。參數 size 指定每個數據項的大小,參數 count 指定要讀取的數據項個數。
fread 函數的返回值是實際讀取的數據項個數,或者在文件末尾或發生錯誤時返回一個小于 count 的值。
fread 函數的使用步驟如下:
打開文件并獲得文件指針;
定義一個足夠大的緩沖區,用于存儲讀取的數據;
調用 fread 函數讀取數據;
關閉文件。
示例代碼如下:
#include <stdio.h>
int main() {
FILE *fp;
char buffer[100];
// 打開文件
fp = fopen("file.txt", "rb");
if (fp == NULL) {
printf("Failed to open file\n");
return 1;
}
// 讀取數據
size_t numItems = fread(buffer, sizeof(char), sizeof(buffer), fp);
if (numItems == 0) {
printf("Failed to read file\n");
return 1;
}
// 輸出讀取的數據
for (int i = 0; i < numItems; i++) {
printf("%c", buffer[i]);
}
// 關閉文件
fclose(fp);
return 0;
}
上述代碼打開了一個名為 file.txt 的文件,并將其內容讀取到 buffer 緩沖區中。最后,將緩沖區的內容逐個輸出。
需要注意的是,使用 fread 函數讀取二進制文件時,需要以二進制模式打開文件(如上述代碼中的 “rb” 參數)。