vc如何把结构体存入文件中

来源:百度知道 编辑:UC知道 时间:2024/05/04 18:40:15
如题,最好能给出简单的代码,谢谢。

和把字符串存入文件是差不多的。比如定义一个简单的结构体
struct STR
{
int i;
char sz[8];
}
//定义一个变量
struct STR str;
str.i = 123;

如果用C语言的方法,可以这样
FILE pf = fopen("str.dat","wb");//注意,要以二进制方式打开文件

fwrite(&str,sizeof(str),1,pf);

读取的时候是一样的
fread(&str,sizeof(str),1,pf);

那个1表示一个结构体,如果你定义一个结构体数组,把1改成数组中元素个数就可以了

凡是只能是char *为参数的相关函数!要传结构体的话可以做相关强制类型转换
你看下面的大概就明白了
#include <stdio.h>
#include "string"
typedef struct test
{
int first;
char secend[10];

}TEST,*pTEST;
int main()
{
TEST aa;
pTEST a=&aa;
a->first=10;
strcpy(a->secend,"hello");

char * b=(char *)a;

pTEST c=(pTEST)b;
printf("%d\n",c->first);
printf("%s\n",c->secend);
return 0;
}