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” 参数)。