总结(2020-5-27)
理清结构特点
链式结构最后一个节点的指针域为空,一点要手动对指针域置空。否则在使用时会引起很多麻烦。比如:申请的结点为动态内存,如果不置空或在声明时进行指向会变为野指针,操作时会引起越界等。
两个类型
Node 和 Linklist
Node为结构体变量,在声明是会分配内存,但Linklist只是声明的一个该类型的指针,需要对该指针进行指向,指向已存在变量或者临时分配一块内存指向它。
Node过了有效期会自动释放,单申请来的内存需手动分配及释放。
有关free
free是释放指针所指向的一片区域,表明该部分内存可以继续给其他进行分配。但该指针仍然指向该区域,所以释放后再次使用该指针一定要进行重新指向要操作的区域。在单链表中,每部分结点的位置只有该结点的前驱知道,所以在释放结点是一点要确保先操作该结点的指针域,确保该节点完成最后的使命。