リンクされたリストでノードを削除しようとしていますが、削除コマンドの後にノード内にデータを表示しようとしましたが、削除されたと思われるデータを表示できます。検索は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;
}
このような問題を解決する適切なツールは、デバッガを使用することですが、そうする前にスタックオーバーフローを尋ねることはありません。 1つ目の行でコードを検査するときに行ったすべての観察を教えてください。また、[**小さなプログラムをデバッグする方法(Eric Lippertによる)](https://ericlippert.com/2014/03/05/how-to-debug-small-programs/)**]を読んでみてください。あなたの問題を再現する** [MCVE] **を私たちに任せてください。 (これはπάνταῥεῖ™が提供する個人的なコメントです) –
@πάνταῥεprogramプログラムは実際に実行されました。デバッガとコンパイラはエラーを検出できませんでした。ノードを削除した後、私はリストを走査しようとし、プログラムがクラッシュしました。 –
実際にデバッガを使用する方法を学ぶ! –