我的程序應該做3個操作:1.插入2.刪除3.使用雙向鏈接列表顯示...我在刪除功能中存在問題。這裏是代碼:刪除雙向鏈表中的一個項目
void List::del()
{
int num;
Node *Aux1=first;
Node *Aux2=NULL;
if(isempty())
cout<<"List is Empty!"<<endl;
else
{
cout<<"Enter the number that you want to DELETE:"<<endl;
cin>>num;
while(Aux1->info!=num && Aux1 != NULL)
{
Aux2=Aux1;
Aux1=Aux1->left;
}
if(Aux1!=NULL)
{
if(Aux2!=NULL)
{
if(Aux1->left==NULL)
Aux2->left=NULL;
else
{
Aux2->left=Aux1->left;
Aux1=Aux1->left;
Aux1->right=Aux2;
}
}
else
{
first=Aux1->left;
//first->right=NULL;
}
}
system("pause");
}
}
在刪除功能我想找到用戶想要刪除,然後從列表中刪除數...問題是當用戶輸入一個數字,不存在在列表中!在這種情況下,我希望我的程序不要在列表中不做任何事情,也不要從列表中刪除任何項目。但是當它發生時,我遇到這樣的錯誤:
有什麼錯我的代碼? ; - ?
你正在分段故障!有適當的空檢查 –