作业帮 > 综合 > 作业

while(!p->next)是什么意思 和while(p1->next!=NULL)运行的结果不同

来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:综合作业 时间:2024/05/04 17:03:41
while(!p->next)是什么意思 和while(p1->next!=NULL)运行的结果不同
STU *insert(STU *head){
int n;
STU *p1=NULL,*p2=NULL,*elem=NULL;
p1=head;
while(1){
scanf("%d",&n);
if(n>0){
elem=(STU *)malloc(sizeof(STU));
if(!elem) exit(0);
elem->num=n;
while(n>p1->num && p1->next!=NULL){
p2=p1;
p1=p1->next;
}
if(nnum){
if(head==p1){
elem->next=p1;
head=elem;
}
else{
p2->next=elem;
elem->next=p1;
}
}
else{
p1->next=elem;
elem->next=NULL;
}
}
else break;
}
return head;
}
while(!p->next)是什么意思 和while(p1->next!=NULL)运行的结果不同
while(!p->next)相当于 while(p->next == 0)
当然和 while(p1->next!=NULL) 不同