c语言文件读取结构体数组
时间: 2024-06-17 20:07:37 浏览: 207
在C语言中,要读取结构体数组,可以通过文件操作实现。一种常见的方法是使用fread()函数读取二进制文件。具体步骤如下:
1. 定义一个结构体数组,以及文件指针和文件名等必要的变量。
2. 打开二进制文件,即使用fopen()函数,指定文件名和打开方式为"rb"。
3. 使用fread()函数读取二进制文件中的数据,并将其存储到结构体数组中。
4. 关闭文件,即使用fclose()函数关闭文件指针。
下面是一个简单的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
struct student {
char name[20];
int id;
float score;
};
int main() {
struct student stu;
FILE *fp;
int i;
// 打开二进制文件
if ((fp = fopen("data.bin", "rb")) == NULL) {
printf("File open error!\n");
exit(1);
}
// 读取数据到结构体数组中
fread(stu, sizeof(struct student), 3, fp);
// 输出结构体数组中的数据
for (i = 0; i < 3; i++) {
printf("Name: %s\n", stu[i].name);
printf("ID: %d\n", stu[i].id);
printf("Score: %.2f\n", stu[i].score);
printf("\n");
}
// 关闭文件
fclose(fp);
return 0;
}
```
阅读全文