fread函数的用法
时间: 2023-07-01 15:07:38 浏览: 105
fread() 是一个 C 标准库函数,用于读取二进制文件中的数据。它的函数原型如下:
```c
size_t fread(void *ptr, size_t size, size_t count, FILE *stream);
```
参数说明:
- ptr:指向读取数据的缓冲区的指针。
- size:每个数据项的字节数。
- count:要读取的数据项数目。
- stream:指向表示文件的 FILE 对象的指针。
函数的返回值是实际读取的数据项数目。如果返回值小于 count,则可能是因为已经读到了文件末尾或者发生了读取错误。
下面是一个简单的示例,读取一个二进制文件中的整数数据:
```c
#include <stdio.h>
int main() {
FILE *fp = fopen("data.bin", "rb"); // 以二进制模式打开文件
if (fp == NULL) {
printf("Failed to open file\n");
return -1;
}
int data[10];
size_t n = fread(data, sizeof(int), 10, fp); // 一次性读取 10 个整数数据
printf("Read %lu integers\n", n);
fclose(fp);
return 0;
}
```
上述代码中,我们使用 fread() 函数从 data.bin 文件中读取了 10 个整数数据,并将它们存储在 data 数组中。如果文件读取成功,将会输出 "Read 10 integers"。需要注意的是,我们在打开文件时使用了 "rb" 模式,这是因为我们要读取二进制文件。
阅读全文