Я написал этот код, чтобы вставить узел в конец односвязного списка. Он компилируется без ошибок, но после выполнения не выводится. Где я ошибся?
void insert_n(int x){
node* temp1 = new node();
temp1->data=x;
temp1->next=NULL;
node* temp2 = head;
while(temp2->next!=NULL){
temp2 = temp2->next;
}
temp2->next=temp1;
}
void print(){
node* temp = head;
while(temp!=NULL){
cout<<temp->data<<" ";
temp = temp->next;
}
}
int main()
{
head = NULL;
insert_n(2);
insert_n(3);
insert_n(4);
insert_n(5);
print();
return 0;
}
Не получается, потому что должен быть особый случай, когда список пуст?