2 u011599867 u011599867 于 2013.08.06 17:32 提问

初学者关于指针的一个问题

void union(Linklist& la,Linklist&lb,Linklist&lc){
pa = la ->next;pb = lb->next;
lc=pc=la;
lc->next = NULL;
.......
}
其中lc=pc=la;
lc->next = NULL;怎么理解,la的值赋给lc就是指针lc指向头结点la,那lc 的指针域是空怎么理解呢?

2个回答

fans1991
fans1991   2013.08.07 16:56

lc 有自己的内存空间,lc=la;lc 指向la的地址。。。之前的内存碎片了。。。

Meditator_hkx
Meditator_hkx   Rxr 2015.11.07 00:09

pc感觉是乱入了。
不过就程序本身而言的话,因为la,lb,lc都是指针,所以必定分别指向某一地址。
lc = pc = la,就lc与la关系而言,是指将la所指向的地址赋值给lc,那么现在两个指针指向同一块内存空间(联合的一个概念);
lc->next = NULL,是指将lc所指向的下一个指针节点赋值为空,链表里这一点非常常见。
具体你可以查一查链表与结构体指针这两个概念,相信就能理解了。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!