c语言将结构体数据struct information{ char Type[40]; char TypeChange[2];//酒店1 机票2 ...... char Product[40]; char Information[80]; char status[20] ; char time[10][40];//记录购买时间 int buynum; int price; struct orderInformation *next; }存入文件(磁盘
时间: 2023-11-20 15:05:23 浏览: 105
可以使用文件操作函数将`struct information`类型的数据存入文件,具体步骤如下:
1. 定义结构体类型并声明变量。
```c
#include <stdio.h>
#include <string.h>
struct information {
char Type[40];
char TypeChange[2];
char Product[40];
char Information[80];
char status[20];
char time[10][40];
int buynum;
int price;
struct information *next;
};
int main() {
struct information info = {"hotel", "1", "ABC Hotel", "Room 101", "booked", {"2021-10-01 10:00:00", "2021-10-02 11:00:00"}, 1, 100, NULL};
return 0;
}
```
2. 打开文件并写入数据。
```c
FILE *fp = fopen("information.dat", "wb");
if (fp) {
fwrite(&info, sizeof(info), 1, fp);
fclose(fp);
}
```
3. 关闭文件。
```c
fclose(fp);
```
完整代码如下:
```c
#include <stdio.h>
#include <string.h>
struct information {
char Type[40];
char TypeChange[2];
char Product[40];
char Information[80];
char status[20];
char time[10][40];
int buynum;
int price;
struct information *next;
};
int main() {
struct information info = {"hotel", "1", "ABC Hotel", "Room 101", "booked", {"2021-10-01 10:00:00", "2021-10-02 11:00:00"}, 1, 100, NULL};
FILE *fp = fopen("information.dat", "wb");
if (fp) {
fwrite(&info, sizeof(info), 1, fp);
fclose(fp);
}
return 0;
}
```
注意,使用二进制写入文件时,要用`fwrite`函数将结构体数据写入文件,参数依次为`&info`结构体指针、`sizeof(info)`结构体的大小、`1`写入的数据个数、`fp`文件指针。
阅读全文