本文介绍了无法删除链表中的节点的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
请帮助我告知编写删除链接列表节点的函数是否存在错误.
Hi ,
Please help me to make me know if there is any bug in writing a function in deleting the nodes of a linked list.
#include <iostream>
#include <cstdlib>
///////////////////////////////////////////////////////////////////////////////////////////
typedef struct Clist // Double linked list //
{
struct Clist *Prior;
char cByte;
struct Clist *Next;
} Clist;
///////////////////////////////////////////////////////////////////////////////////////////
void DeleteFrom( Clist** clpInput )
{
///////////////////////////////////////////////////////////////////////////////////
Clist* clpTmpA, * clpTmpB, * clpTmpC;
///////////////////////////////////////////////////////////////////////////////////
clpTmpA = *clpInput;
while( clpTmpA != NULL )
{
clpTmpB = clpTmpA->Next;
free(clpTmpA->Next);
clpTmpA = clpTmpB;
}
}
推荐答案
clpTmpB = clpTmpA->Next;
free(clpTmpA->Next);
clpTmpA = clpTmpB;
到
to
clpTmpB = clpTmpA->Next;
free(clpTmpA);
clpTmpA = clpTmpB;
这篇关于无法删除链表中的节点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!