标题:链表动态分配空间,看了很久了看不明白,这是函数的一部分,主要是这个不懂 ...
取消只看楼主
S3232
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2021-11-15
 问题点数:0 回复次数:2 
链表动态分配空间,看了很久了看不明白,这是函数的一部分,主要是这个不懂,有没有大佬给我一点比较详细的解释啊,非常感谢
int i=0;
struct STU *head =NULL,*p1,*p2;
while(i<n){
p1=(struct STU*) malloc(LEN);
p1–>next = NULL;
scanf("%s%f",p1->num,&p1->score);
// 结构体里面num是一个数组,score是整型变量。
if(head == NULL){//提问:在定义head的时候就已经是空的了,为啥还要判断head是不是为null
head = p1;//这儿完全看不懂,为啥p1给了head,p1还能给p2
p2= p1;
}
else{
p2->next =p1;//这里也是,哎好蒙
p2= p1;
}
i++;
}
return(head);
}
搜索更多相关主题的帖子: head 比较 函数 链表 NULL 
2021-11-17 15:34
S3232
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2021-11-15
得分:0 
书上说p2=p1是指向尾节点,为什么指向尾节点不用p2=p1->next?
2021-11-17 16:16
S3232
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2021-11-15
得分:0 
谢谢大佬耐心解答
2021-11-18 14:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-507552-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019134 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved