我试图删除链接列表上的节点,但删除命令后,我试图显示节点内的数据,我仍然可以显示所谓的删除数据。搜索是节点即时试图通过delete
d指针删除删除节点不会工作
int position=0;
while(admintemp !=NULL)
{
position=position+1;
if(admintemp==search)
{
cout<<"found"<<position;
getch();
break;
}
admintemp = admintemp->next;
}
node *body = new node;
node *admintemp = new node;
if(position>0)
{
admintemp = adminhead;
for (int i= 1;i<position;i++)
{
body = admintemp;
admintemp = admintemp->next;
}
body->next=admintemp->next;
cout<<"deleting";
getch();
delete admintemp;
}
解决此类问题的正确工具是使用您的调试器,但不要在堆栈溢出之前询问。告诉我们您在检查您的代码时所做的所有观察。您也可以阅读[**如何调试小程序(由Eric Lippert撰写)](https://ericlippert.com/2014/03/05/how-to-debug-small-programs/)**] At最少给我们留下一个** [MCVE] **,它可以再现您的问题。 (这是个人评论由πάνταῥεῖ™提供) –
@πάνταῥεῖ该程序实际执行。调试器和编译器无法找到任何错误。删除节点后,我试图遍历列表并且程序崩溃。 –
了解如何真正使用调试器! –