c++ 指令引用的内存,该内存不能为read ?
#include<iostream.h>#include<string.h>
struct test{ //定义结构体
char name[20];
float score;
test * next;
};
void main()
{
char name[20];
float score;
test * head=NULL;
test * tail=NULL;
test * Pnew;
Pnew=new test;
head=Pnew;
tail=Pnew;
//输入部分
while(1){
cout<<"input name and score"<<endl;
cin>>name;
if(name[0]=='0')
break;
cin >>score;
strcpy (Pnew->name,name);
Pnew->score=score;
Pnew->next=NULL;
Pnew=new test;
tail->next=Pnew ;
tail=Pnew;
} // end while
//删除姓名为lisi 的人
test * P1,*P2;
P1=head;
while(P1->next!=NULL&& P1-> name!="lisi")
{ P2=P1; P1=P1->next;}
if (P1->name =="lisi")
P2->next=P1->next;
else cout<<"can't find"<<endl;
//输出部分?
test * pout=head;
while(pout!=NULL)
{ cout<<pout->name<<pout->score<<endl;
pout= pout->next;
}
//释放内存空间
while(head!=NULL)
{
test * P1;
P1=head;
P1=P1->next;
delete P1;
}
}
定义一个结构体,删除一个叫元素,再输出链表,为什么程序会出现指令引用的内存只能为read?
请教各位,非常感谢!