Я пишу функцию в 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-> следующая = (узел *) таНос (SizeOf (узел)), я получаю сообщение об ошибке нарушения прав доступа (ошибку сегментации). Я не считаю ничего принципиально неправильным. Не могли бы вы рассказать мне об этом?
Он не входит в цикл. Вместо этого инициализируется новый узел, на который указывает temp. Мой основной связанный список - это «список», поэтому на самом деле мне нужно дать инструкцию: list = temp; в конце функции. –