c++中为啥我的链表创建成功了但在后面的函数中读不出链表内的内容

voidb::input(){a*p,*p1,*head;p=head=newa;p->amount=0;p->changjia[20]='0';p->goods[20]... void b::input()
{ a *p,*p1,*head;
p=head=new a;
p->amount=0;
p->changjia[20]='0';
p->goods[20]='0';
p->pinpai[20]='0';
p->price=0.0;
cout<<"请输入您要输入的商品的数量!"<<endl;
int i;
cin>>i;
cout<<"请选择输入类型!"<<endl;
cout<<"1.食品类"<<endl<<"2.化妆品类"<<endl<<"3.日用品类"<<endl<<"4.饮料类"<<endl;
while((i--)!=0)
{
p1=new a;
p1->input();
p->next=p1;
p=p1;
if((getch())=='0')
{ cout<<"已结束,请继续下一个功能!"<<endl;
break;}
}
cout<<"输入完毕!"<<endl;
p1->next=NULL;
p=head->next;
while(p!=NULL) //链表内的内容;
{p->look();
p=p->next;
}
return ;
}
void satisticprice()
{
stu *p,*p1,*head;b *gt; //不能将链表链表内东西读出
p1=head->next;
p=p->head;
while(p!=NULL)
{ while(p1!=NULL)
{
if(p->price<p1->price)
gt->swap(p,p1);
p1=p1->next;
} // 有 // 问题
p=p->next; // 问题
}
p=head->next;
while(p!=NULL)
{
p->look();
p=p->next;
}
}
void b::satistic()
{ a *p,*head;
p=head->next;
cout<<"1.按价钱统计\t2.按商品数量统计"<<endl;
char n;
cin>>n;
switch(n)
{
case '1': satisticprice();break;
case '2': satisticamount();break;
default: cout<<"输入错误!"<<endl;
}
}
// 我的链表创建成功了,但就是不能在后续的函数中使用 ,我感觉少了传入机制,但就是不知道咋整;
展开
 我来答
Ivtr3068
2018-11-25 · TA获得超过241个赞
知道小有建树答主
回答量:389
采纳率:40%
帮助的人:52.2万
展开全部
(fp=fopen("course.txt","r")) "r"是以读取方式打开吧,"w"是写入 r 以只读方闹返竖式打开文件,该文件必须存在。 r+ 以可读写方式打开文件,该文件必须存在。 rb+ 读写打开一个二液大进制文件,允许读写世袜数据,文件必须存在。 rw+ 读写打开一个文本文件,允许读和写。
追问
我这没写入文件
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式