c语言结构体数组存入文件_关于C语言结构体数组写入文件的问题?

读的时候 路径不对。。还有就是写入的文件是以字符的形式写入的。所以int型要转一下。。

具体如下

#include"stdio.h"

#include"conio.h"

#include"stdlib.h"

struct node

{

int a;

char b[2];

};

main()

{

FILE *p;

char ch;

int i=0,len=sizeof(struct node);

struct node stu[2];

char temp[2];

for(i=0;i<2;i++)

{

printf("information:\n");

gets(temp);

stu[i].a=atoi(temp);

gets(stu[i].b);

}//输入结构体数组

for(i=0;i<2;i++)

{

printf("%d %s\n",stu[i].a,stu[i].b);

}//检查是否输入成功

if(stu[0].a>stu[0].a)

printf("A\n");

else printf("B\n");//判断大小,无关问题

if((p=fopen("d:\\tex.txt","w+"))==NULL)//打开文件

printf("ERROR\n");

else

{

for(i=0;i<2;i++)

{

itoa(stu[i].a, temp, 10); //转为字符写入

fwrite(temp,sizeof(temp),1,p);

fwrite(stu[i].b,sizeof(stu[i].b),1,p);

}

}//将结构体写入文件

fclose(p);

if((p=fopen("d:\\tex.txt","r"))==NULL)

printf("ERROR\n");

else

{

while((ch=fgetc(p))!=EOF)

putchar(ch);

fclose(p);

}//输出文件信息

}

ps:读出来的时候也要考虑下,把他转为整

◆◆

评论读取中....

请登录后再发表评论!

◆◆

修改失败,请稍后尝试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值