C语言怎样把结构体写入文件
时间: 2024-04-01 19:14:06 浏览: 71
要将结构体写入文件,需要使用C语言的文件操作函数。以下是一种常见的方法:
1. 定义一个结构体,例如:
```c
typedef struct {
int id;
char name[20];
float score;
} Student;
```
2. 打开一个文件,使用fopen()函数,例如:
```c
FILE *fp = fopen("students.dat", "wb"); // 打开一个二进制文件,用于写入
```
3. 将结构体写入文件,使用fwrite()函数,例如:
```c
Student s1 = {1, "Alice", 90.5};
fwrite(&s1, sizeof(Student), 1, fp); // 写入一个结构体
```
4. 关闭文件,使用fclose()函数,例如:
```c
fclose(fp); // 关闭文件
```
完整的示例代码如下:
```c
#include <stdio.h>
typedef struct {
int id;
char name[20];
float score;
} Student;
int main() {
FILE *fp = fopen("students.dat", "wb"); // 打开一个二进制文件,用于写入
if (fp == NULL) {
printf("Failed to open file.\n");
return 1;
}
Student s1 = {1, "Alice", 90.5};
fwrite(&s1, sizeof(Student), 1, fp); // 写入一个结构体
fclose(fp); // 关闭文件
return 0;
}
```
阅读全文