温馨提示×

C语言文件操作之fread函数详解

小云
157
2023-08-09 12:52:50
栏目: 编程语言

fread函数是C语言中用于读取文件的函数,其原型为:

size_t fread(void *ptr, size_t size, size_t count, FILE *stream)

该函数从指定的文件流 stream 中读取数据,并将其存储到 ptr 指向的内存块中。参数 size 指定每个数据项的大小,参数 count 指定要读取的数据项个数。

fread 函数的返回值是实际读取的数据项个数,或者在文件末尾或发生错误时返回一个小于 count 的值。

fread 函数的使用步骤如下:

  1. 打开文件并获得文件指针;

  2. 定义一个足够大的缓冲区,用于存储读取的数据;

  3. 调用 fread 函数读取数据;

  4. 关闭文件。

示例代码如下:

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

0