c语言fread函数读结构体
时间: 2023-12-18 18:04:37 浏览: 93
c语言结构体
在 C 语言中,可以使用 fread 函数来读取二进制文件中的数据。如果要读取结构体,可以先定义一个结构体类型,然后使用 fread 函数将数据读入到该结构体变量中。
例如,如果有一个名为 person 的结构体类型,包含 name 和 age 两个成员变量,可以使用以下代码读取二进制文件中的一个 person 结构体:
```
#include <stdio.h>
typedef struct {
char name[20];
int age;
} person;
int main() {
FILE *fp;
person p;
fp = fopen("person.dat", "rb");
if (fp == NULL) {
printf("Failed to open file\n");
return 1;
}
fread(&p, sizeof(person), 1, fp);
printf("Name: %s\n", p.name);
printf("Age: %d\n", p.age);
fclose(fp);
return 0;
}
```
在上面的代码中,首先定义了一个 person 结构体类型,并在 main 函数中声明了一个 person 类型的变量 p。然后通过 fopen 函数打开名为 person.dat 的二进制文件,并使用 fread 函数将文件中的一个 person 结构体读入到 p 变量中。最后输出 p 变量的成员变量 name 和 age。
阅读全文