本文主要是介绍链表出错记录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.今天在使用链表时遇到了一个十分隐秘的错误。在使用一个全局变量类型的链表时,链表中记录的是history数据,在需要删除所有的节点的时候,因为头节点没有储存信息,而且在添加新的history的时候需要使用到链表的头节点。在删除所有的历史节点的时候,只是删除了除头节点之外的所有的节点。但是如果在删除所有的history后,查询多有的history(递归访问所有的history节点),这时候就会访问到未知的内存区域,得到奇奇怪怪的数据。查找错误后发现,是因为在删除所有的history节点之后,没有将头节点的指针域置空,导致递归访问到未知的内存。
总结:在删除链表节点时,一定要注意其直接前驱的指针域改变的问题。
这篇关于链表出错记录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!