Итак, у меня уже есть связанный список из 3 книг. Теперь я хочу добавить пожертвованные книги в предыдущий связанный список. (donation
- это массив строк (названий книг), а amount
- количество подаренных книг). Вот мой код:
void newbrowse(int amount, string donation[])
{
head= new node;
second=new node;
tail= new node;
head->bookname = "Book1";
head->next = second;
second->bookname = "Book2";
second->next = tail;
tail->bookname = "Book3";
for (int i=0; i<amount; i+=1)
{
tail->next = &donation[i];
tail = donation[i];
}
display = head;
cout<<"Total books:"<<endl;
for (int j=1; j<=(amount+3); j+=1)
{
cout<<display->bookname<<endl;
display = display->next;
}
}
Я получил эту ошибку в этой строке tail->next = &donation[i];
. Насколько я понимаю, эта строка означала, что tail->next
теперь указывает на адрес donation[i]
, поэтому я не знаю, почему я получаю ошибку? tail->next
- это указатель, поэтому я положил амперсанд на пожертвование.
Что это за ошибка и как ее исправить?