删除链表的代码是:
//清除链表的全部数据
void list::Clear()
{
Node *Temp_head=Head;
if (Temp_head==0) return;
do
{
Node *TEMP_NODE=Temp_head;
Temp_head=Temp_head->next;
delete TEMP_NODE;
}
while (Temp_head!=0);
}
//node是节点类
class Node
{
//声明list类为本类的友元类
friend class list;
private:
int Data; //节点数据
Node *previous; //前趋指针
Node *next; //后继指针
};
不好意思,因为字数有限制,所以截了图,还请理解
有点问题,终于看出来了
for( int i=1;i<=10;++i) //注意这里是分号,不是逗号,10+i会造成死循环,因此改成10
第二:
你的析构函数中会做Clear()操作
因此,你不应该再调用 list1.Clear()了
这样会造成重复释放内存,故会出错,先去掉这句!!
我的类怎么写才能够为Node * next;分配内存?
C++链表问题 总是存在这么一个错误:error C2601: 'Add_word' : loca...
(上下寻早{与}是否漏缺```)这个错误一般都是这样的问题、
c++ 链表 删除各种情况节点问题。。。求教。。在线等。。。
一、结尾节点无法删除的问题,你可以想象一个只有三个节点的链表,结尾节点的ID=findid,开始时,p指向第二个节点,然后执行到第一个if时,由于p->next->ID==findid,于是执行第二个if语句,但是此时p->next->next是等于NULL的,所以删除节点的代码没被执行。二、当只有一个结点时,因为一开始定义...
c++ 链表,,求指导,程序崩溃,line:1044
链表的最后一个节点的next的值,是否设置为NULL了,如果没有设置,到了最后一个节点的时候,就会出现崩溃.你的链表中的每个节点的next值,是否都对了,如果有任一个节点的next没有指向有用的节点的话,就会访问不被允许访问的内存,导致崩溃.考虑下在进入循环的第一次是否就有问题,因为循环里,并没有判断p...
C++中销毁单链表的问题
{ LNode * p = L; LNode * t; while (p) { t = p->next; delete p; \/\/这里。删除当前p节点,下一步赋值为t(即p->next) p = t; }}
c++ 链表,,求指导,程序崩溃,line:1044
1.链表的最后一个节点的next的值,是否设置为NULL了,如果没有设置,到了最后一个节点的时候,就会出现崩溃.2.你的链表中的每个节点的next值,是否都对了,如果有任一个节点的next没有指向有用的节点的话,就会访问不被允许访问的内存,导致崩溃.3.考虑下在进入循环的第一次是否就有问题,因为循环里,并没...
C++程序,为什么编译通过了,执行时却出现错误
编译通过是因为你没有语法问题,运行出错是你的程序有逻辑问题,空指针,内存漏洞等程序问题
c++ MFC 里的链表问题(内详)
链表是一种数据结构,就像是一个一个的珠子串起来的链子,每个珠子就是一个结构体变量(当然这是C语言中的说法,要是是C++的话,每个珠子就是一个对象了),这种数据结构可以很方便地的访问每个元素,一般它是与数组相对的,数组是串行的,按照索引来访问元素,而链表是靠结构体中存储的下一个元素的...
C++编了一个简单的链表节点模版,运行时显示error lnk2019 无法解析的外 ...
不要把头文件和实现文件分开,也就是说,你把所有代码都放在一个文件里面。不要把类的声明和定义放在h中,又把成员函数的实现放在cpp 中。全部都放在一起,叫cpp或者hpp 就好。visual studio 对模板的分离编译不是很好,就出现连接错误。参考资料:个人经验 ...
c++链表问题
答:所以你的答案是对的,但是要注意过程。还有 s->link = new Node;的话结构是什么样的?是[25 | ? ] 还是 [25 | ]--->[ ? | ? ]?问号代表不知道 答:S->link的值发生改变,指向了一个新的内存区域。如果r=s->link会是什么样的结构?答:链表的结构就是图中所示了,...
C语言链表问题 DEVC++编译出error:too many arguments to functi...
你在main函数内声明了一个int deleteNode();函数,这个表明deleteNode函数是没有参数的。所以你后面的调用才出了问题。其实完全没有必要再声明的呀。