问题描述
- 队列和链表的销毁问题
-
void DestoryQueue(LinkQueue *q)
{
while(q->front)
{
q->rear = q->feont->next;
free(q->front);
q->front = q->rear;
}
}void DestoryLinkList(LinkList *L)
{
free(L);
}请问大神们,为什么队列的销毁和链表的销毁不一样啊?队列直接用free(q);不行吗?
解决方案
队列是一种数据结构,其特点是先进先出,后进后出;队列的存储方式可以使用线性表进行存储,也可以使用链表进行存储。 所以是否使用那种方式释放内存,
主要还是看你自己怎么创建到有关系,只要保证内存不泄漏,你怎么释放都没事
解决方案二:
这个销毁跟你创建队列或者链表的方式相关。销毁的时候必须把每一个你创建的节点的内存都给释放掉,以防止内存泄漏。
时间: 2024-11-01 20:51:31