Я пытался использовать функцию, в которой вы добавляете узел в конец связанного списка, и, хотя он выглядит успешным, он, по-видимому, только заполняет значение заголовка, а не продолжает цепочку. Эта функция влияет на список, возвращается к основной функции, затем обращается к тому же связанному списку для других функций, но я могу получить доступ только к заголовку связанного списка.
Я просмотрел несколько предыдущих вопросов ипримеры того, почему это происходит, но ни у одного из них нет такой же проблемы и ситуации, как у меня.
Это функция addNode с узлом * и заголовком в качестве входных данных от основной функции. И для этого я уже заполнил значения A вводом, который функционирует должным образом.
node *A = new node, *ptr = head;
A->costs1=costs;
A->next = nullptr;
ptr = head;
if (head == nullptr)
{
head = A;
}
else{
while (ptr->next!=nullptr){
ptr=ptr->next;
}
ptr = A;
}
А вот структура, я сократил количество переменных, чтобы она не стала слишком сложной:
struct node
{
string costs1;
node *next;
};
Я могу получить доступ к head-> cost1 просто отлично, и это правильно, но если я попытаюсь получить доступ к head-> next-> cost1, это ничего не даст.