我正在用C语言写一个基于双向链表的代码。我错误地认为通过执行free(head_node)来删除头节点。我可以看到随着运行的进行,计算机变慢了(这显然是由于内存泄漏)。我搜索了stackoverflow和其他站点,我通常会遇到这样的代码来删除链表:while( current != NULL ) {free( current );}
当我在我的代码中尝试这样做时,程序只是在
在自学如何在C中管理链表时,我遇到了一些困难。我创建了一个函数getNode来创建一个包含4个整数的列表。现在我想打印列表的第一个元素,这样我就可以学到一些新的东西。不幸的是,当我试图调用列表的头节点时,程序打印出最后一个节点。当所有的代码都在main()中时,没有什么问题,只有当我分解代码的时候,才出现了上面提到的困难。list;{ int base;