请问这里的文件读写要怎样弄呢? 大概就是结构体的一个链表的文件读写! 高分!!急!!!!! 要C++的! 20

#include<iostream>usingnamespacestd;typedefstructlist{intnumber;charname[10];intyear;... #include<iostream>

using namespace std;

typedef struct list
{
int number;
char name[10];
int year;
int month;
int day;
int sex;
long telephone;
char address[20];
struct list *next;
}node;
node * pt=new node,*pt2,*newpt,*headpt=NULL,list;

int first=1,s=0;
void read()
{
node* stu=new node;

FILE*pFile;
pFile=fopen("studentdata.dat","w+");
if ( !pFile )
{
cout<<"打开文件失败!";
exit(1);
}
pt=headpt;

rewind(pFile);
for(int i=0;i<s;i++)
fread(&stu[i], sizeof(list), 1, pFile);

for(int j=0;j<s;j++)
{
*(pt->next)=stu[j];
pt=pt->next;
}
fclose(pFile);
cout<<"已从studentdata.dat文件读取数据"<<endl;
}

void write()
{
node* stu=new node;

FILE*pFile;
pFile=fopen("studentdata.dat","w+");
if ( !pFile )
{
cout<<"打开文件失败!";
exit(1);
}
pt=headpt;
for(int j=0;j<s;j++)
{
stu[j]=*(pt->next);
pt=pt->next;
}

rewind(pFile);
for(int i=0;i<s;i++)
fwrite(&stu[i], sizeof(list), 1, pFile);

fclose(pFile);
cout<<"已向studentdata.dat文件写入数据"<<endl;
}

void main()
{

int action;
display();
while(action!=8)
{
cout<<"请选择操作:";
cin>>action;
if(action==1){creat();}
if(action==2){inst();}
if(action==3){dele();}
if(action==4){read();}
if(action==5){write();}
if(action==6){search();}
if(action==7){show();}
if(action==8){exit(1);}
cout<<endl;
}
}
所以才问啊,麻烦2楼改一下
展开
 我来答
百度网友fe3f57f71
2011-01-05 · 超过31用户采纳过TA的回答
知道答主
回答量:102
采纳率:0%
帮助的人:97.9万
展开全部
实话讲代码我没看明白。。。加上我一把不用这种方式读文件。。。
不过用fstream吧,直接用尖号读写
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shark_8309
2011-01-07 · TA获得超过1024个赞
知道小有建树答主
回答量:356
采纳率:0%
帮助的人:283万
展开全部
先等一下吧。
比较忙,加上读你的程序实在比较耗时间
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式