C语言结构体数组写入文件的问题

 我来答
章金兰迟静
2019-05-04 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.4万
采纳率:25%
帮助的人:835万
展开全部
读的时候
路径不对。。还有就是写入的文件是以字符的形式写入的。所以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:读出来的时候也要考虑下,e799bee5baa6e79fa5e98193e78988e69d8331333236393836把他转为整形
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式