【发布时间】:2014-01-19 17:38:58
【问题描述】:
如果我们有这样的结构(链表的一个节点):
struct Node{
int data;
struct Node* next;
}
我们有 2 个指针(a 和 b),这样
a->next = b;
如何交换两个指针 a 和 b(以便 a->next = b->next 和 b->next = a)?我尝试过这样的事情:
a->next = b->next;
b->next = a;
但它似乎不起作用...这段代码 sn-p 有什么问题? a->next 是否最终指向自己?通过这样做a->next = b->next,我们是让a->next 指向b->next 指向的任何东西,还是让它指向b->next 在分配时指向的东西?
伙计,指针令人困惑.. 任何帮助表示赞赏!
【问题讨论】:
-
你试过用纸笔检查发生了什么吗?
-
是的,虽然我不是很清楚,因为我的最后一个问题
标签: c pointers linked-list