亲们,c语言中,链表中节点p1=p2表示什么意思?

如题所述

实际上就是让p1指向p2指向的节点。
例如:p2指向一个链表中某个节点,则执行语句p1=p2 后,指针p1也指向了之前p2指向的节点。
即p1,p2指向同一个节点。
p1指向的状态没有指明,仅从你的问题来看。无论之前是何种状态,p1=p2.只是将p1指向其他地方,
对p1之前指向的节点没有任何影响。追问

想问你下哦,大师,我做好了一个链表,但是没有头指针,想要删除头结点的时候,怎么办?

追答

何意?
假如有2个指针 p1,p2. 都指向头结点:再定义p3;
一般做法是: p2=p2->next; p3=p1; p1=p2; p3->next= NULL;
这样可以pdelete p3了。 或者说free(p3)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-04-13
将p2指向的地址 赋值给p1,p1节点里面的数据域和指针域也相应的变化为p2的
第2个回答  2012-04-12
表示P2替代掉P1节点追问

那原来p1的节点里面的数据域和指针域也会全部代换掉么?

追答

是的,所有的全部替换

相似回答