我在理解链表中两个节点之间的等号时遇到了麻烦。
如果有两个链表节点n1和n2
N1 = N2意味着将N2的值分配给N1节点或N1和N2指向相同的位置?
答案 0 :(得分:0)
假设您的结构定义为
struct my_struct{
int val;
struct my_struct *next;
};
如果N1和N2是结构指针:
struct my_struct *N1, *N2;
然后N1 = N2表示N1指向与N2相同的位置。(N1指向的位置熄灭。如果它指向动态内存,则将其保存以进一步释放)
如果N1和N2是结构变量:
struct my_struct N1, N2;
然后N1 = N2会给您带来编译错误。