我正在尝试插入到链表的前面,并且当head为NULL时返回一个已分配的头,但它似乎只在head不为NULL的情况下起作用。
基本上,如果
node* x = NULL;
是
x = addfront(x, 3)
有效?
答案 0 :(得分:3)
只要您不尝试取消引用它们,空指针就可以了。
像
这样的东西node* x = NULL;
x = NULL;
完全没问题。
答案 1 :(得分:3)
使用一个使用空指针作为参数在C?
中有效的空指针赋值的函数
取决于addfront
内容。只要您不在x
中取消引用addfront
,它就完全有效,因为取消引用空指针是一种未定义的行为。
它似乎只适用于head不是NULL的情况。
我们需要addfront
源代码。如果您没有取消引用x
,则错误发生在其他地方。