void ins_after(struct node *node, struct node *new_node)
{
new_node -> next = node -> next;
node -> next = new_node;
new_node -> next -> prev = new_node;
new_node -> prev = node;
}
当我尝试将节点插入双列表时,上面的代码给出了段错误。知道为什么吗? =/
最佳答案
您必须NULL
- 检查指针,考虑如果节点
位于列表的开头或结尾会发生什么,就像通过重复构建列表时经常发生的情况一样追加。
“孤独”列表项的 prev
和 next
通常都等于 NULL
。
关于c - 将节点插入双链表时出现段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14690475/