卯乐 发表于 2018-4-21 20:45:39

链表问题,大神看下谢谢

if里面的和else里面的   看不懂。这个程序目的是多个节点初始化。

ba21 发表于 2018-4-21 20:53:46

拜托,上代码也就复制 粘贴。会比截图来的慢吗?

卯乐 发表于 2018-4-21 21:11:32

ba21 发表于 2018-4-21 20:53
拜托,上代码也就复制 粘贴。会比截图来的慢吗?

看的视频

洛臻 发表于 2018-4-21 21:24:16

head应该是要被设置为链表头指针,最开始head初始化为0,第一次循环if语句判断head是否为0,如果为0则代表是第一次循环。则把head指向p1,并且把p2指向p1。然后进行下一次循环,下一次循环中,head已经不等于0,所以会执行else里的内容,p2->next代表头节点的下一跳指针,把下一跳指向新的节点后,p2在指向新节点。然后重新循环这一步骤。

卯乐 发表于 2018-4-21 21:32:36

洛臻 发表于 2018-4-21 21:24
head应该是要被设置为链表头指针,最开始head初始化为0,第一次循环if语句判断head是否为0,如果为0则代表 ...

这里面的=不算赋值吗?

桃花飞舞 发表于 2018-4-21 21:36:08

好厉害的样子,一直没弄懂链表。

卯乐 发表于 2018-4-21 21:36:17

洛臻 发表于 2018-4-21 21:24
head应该是要被设置为链表头指针,最开始head初始化为0,第一次循环if语句判断head是否为0,如果为0则代表 ...

看了还是有点蒙?elase里面的

卯乐 发表于 2018-4-21 21:45:28

洛臻 发表于 2018-4-21 21:24
head应该是要被设置为链表头指针,最开始head初始化为0,第一次循环if语句判断head是否为0,如果为0则代表 ...

p2->next指向p1,p2指向p1是说他们公用一个值,还是p1的值给p2next,p2等于空的?

洛臻 发表于 2018-4-21 21:47:44

卯乐 发表于 2018-4-21 21:32
这里面的=不算赋值吗?

就是赋值啊,赋一个初值0就是初始化啊。

洛臻 发表于 2018-4-21 21:54:59

卯乐 发表于 2018-4-21 21:45
p2->next指向p1,p2指向p1是说他们公用一个值,还是p1的值给p2next,p2等于空的?

P2和P1都是指针变量,说P2->next指向P1是P2->next也是一个指针变量,指向的是一个地址。p2->next指向p1:代表p2现在指向的是上一个节点,p1是新节点,p2->next=p1的意思是上一个节点的下一跳指向了新节点。
然后p2=p1是代表p2指向了p1,也可以说p2指向了新节点。这跟上一个p2->next=p1没有关系。

卯乐 发表于 2018-4-21 22:01:36

洛臻 发表于 2018-4-21 21:54
P2和P1都是指针变量,说P2->next指向P1是P2->next也是一个指针变量,指向的是一个地址。p2->next指向p1: ...

还是没懂,p2->next=p1的意思就是证明 p2->next是个地址。   其他的还是不懂。

卯乐 发表于 2018-4-21 22:08:20

洛臻 发表于 2018-4-21 21:54
P2和P1都是指针变量,说P2->next指向P1是P2->next也是一个指针变量,指向的是一个地址。p2->next指向p1: ...

非常感谢了

洛臻 发表于 2018-4-21 22:16:12

卯乐 发表于 2018-4-21 22:01
还是没懂,p2->next=p1的意思就是证明 p2->next是个地址。   其他的还是不懂。

P2是一个结构体指针变量,这个结构体里面有一个元素是next,这个next应该也是一个结构体指针变量。所以p2->next代表的是P2指针变量指向的结构体里面的这个next这个指针,p2->next=p1的意思是让next这个指针变量指向p1这个结构体的地址。这么说明白吗
页: [1]
查看完整版本: 链表问题,大神看下谢谢