我正在用C++編寫一個函數來將「int」類型的「數據」添加到鏈表的末尾。C++中鏈接列表實現中的分段錯誤
void insert_back()
{
int no;
node *temp;
cout<<"\nEnter the number"<<"\n";
cin>>no;
temp = head;
if(temp != NULL)
{
while(temp != NULL)
temp = temp->next;
}
temp->next = (node*)malloc(sizeof(node));
temp = temp->next;
temp->data = no;
temp->next = NULL;
}
然而,在該行,TEMP->下一=(節點*)malloc的(的sizeof(節點)),我得到訪問衝突錯誤(分段錯誤)。我沒有發現任何根本錯誤。你可以在這個問題上給我啓發嗎?
它不進入循環。而是一個新的節點被初始化,它被temp指向。我的主要鏈表是「list」,所以實際上我需要給出一個聲明:list = temp;在函數結束時。 –