C语言中关于指针的问题(链表)

来源:百度知道 编辑:UC知道 时间:2024/05/09 20:50:38
typedef struct LNode{
ElemType data;
Struct LNode *next;
}LNode,*LinkList;

如果已经建立好一个链表,p是其中一个结点,且p->next非空,如果令
q=p;并改变q->next(令其指向p->next以外的结点),那么p->next会跟着改变吗(会不会改变原链表的结构)

现在p和q都指向同一个节点,也就是一根气球拴两根线,你说把其中一根线解下来系到别的地方,另一根线就没拴在气球上了吗?你思考一下!

会的,因为你将q=p;p和q就起同样的作用了,大家都指向同一个结点。

这样看来,P和Q不过是两个同类型的链表,互不相干,故不会改变。

p应该是指向其中一个结点的指针吧!
如果是这样,会改变的。

不会!