早教吧 育儿知识 作业答案 考试题库 百科 知识分享

这个是数据结构简单链表的问题(带头结点)link*link::hcreat(intn){link*s,*p;inti;p=newlink;p->next=NULL;for(i=1;i>s->date;s->next=p->next;//请问这句和下一句是什么意思呀p->next=s;是把s->next的地址指向p->ne

题目详情
这个是数据结构简单链表的问题 (带头结点)
link *link::hcreat(int n)
{
link *s,*p;
int i;
p=new link;
p->next=NULL;
for(i=1;i>s->date;
s->next=p->next;//请问这句和下一句是什么意思呀
p->next=s; 是把s->next的地址指向p->next的地址还是将p->next 赋值给s->next ;p->next=s 我知道是将p的指针域指向s 但如果执行第二个循环 因为p->next赋值给了s->next; p-next是不是已经被s->next取代了,p->next=s已经变成了s->next=S2呀 如果不是这样 怎么讲第一和第二个结点连接起来 解决下
▼优质解答
答案和解析
s->next=p->next;//是把p的下一个赋为s的下一个,就是s->next和p->next指向同一个 p->next=s; p的下一个就变成s,p->next的值就是s第二次循环时,就来了一个新的s,再次执行下面的s->next=p->next;就是新的s的下一个指...