1.init()时一定要记得malloc()申请新的内存空间(如果不申请内存空间程序返回的值是有内存里的脏数据,把人看得云里雾里找不到问题出在哪)
2.带头结点单链表尾插法要注意:若LNode *p = L->next; 循环条件是while(p != NULL){p = p->next;},那么最后的p是NULL,此时在p(NULL)后插一个结点会插在内存中不知道哪个地方去了。应该改成这样:LNode *p = L; while(p->next != NULL){p = p->next;}
如下图这样写,也会包含判断L->next 是否为空。
3.在循环上,while(p!= NULL)与while(p)一样,while(i--)与while(i>0)一样。
标签:内存空间,NULL,LNode,coding,while,next,算法,数据结构 From: https://www.cnblogs.com/jinziguang/p/17525322.html