链表节点的注意点(什么时候节点的地址为NULL)

切记,如果所选中的节点为NULL,那么是不能访问该结点的数据的,不让会发生内存错误,更加恶心的是有些编译器是不会报错的(dev c++)

同时,如果节点开辟空间了,节点的数据就不会NULL;反之,如果节点没有开辟空间,该节点的地址就为NULL,任何引用节点数据的行为会导致内存错误。

这里给出一点代码:

int main(){
    struct node *p;
    p=(struct node*)malloc(sizeof(struct node));
    if(p==NULL){
        printf("1");
    }
    else printf("0");
}

运行结果为 0

刚好印证了上述的内容

总结以下,就是在引用节点数据前,一定要充分考虑节点的地址是否为NULL.

人生如逆旅,我亦是行人
原文地址:https://www.cnblogs.com/sz2003/p/14552944.html