Почему мой связанный список не печатается, хотя он вызывает функцию? - PullRequest
0 голосов
/ 16 апреля 2020

Я хочу создать библиотечную программу, в которой названия книг хранятся в связанном списке. Но я не знаю, почему он не отображает связанный список.

#include <bits/stdc++.h>
using namespace std;

struct node
{
    string bookname;
    node* next;
};

node* head;
node* tail;

void initialize()
{
    head=NULL;
    tail=NULL;
}

void browse()
{   
    node* second;
    node* third;
    node* display;
    cout<<"Here's our books:"<<endl;
    head->bookname = "Book1";
    head->next = second;

    second->bookname = "Book2";
    second->next = third;

    third->bookname = "Book3";
    third->next = NULL;

    display = head;
    for (int i=1; i<=3; i+=1)
    {
        cout<<display->bookname<<endl;
        display = display->next;
    }

}

void menu()
{
    int choice;
    char repeat;

    cout<<"Welcome to the library! What do you want to do?"<<endl;
    cout<<"1. Browse books"<<endl;
    cout<<"2. Borrow books"<<endl;
    cout<<"3. See borrowed books"<<endl;
    cout<<"4. Donate books"<<endl;
    cout<<"5. Nothing"<<endl;
    cout<<"Pick a number, please: ";
    cin>>choice;

    if (choice==1)
    {
        browse();
    } else 
    {
        cout<<"Input not valid. Try again."<<endl;
    }
}

int main()
{
    initialize();
    menu();
}

Я только что сделал browse() первый раз, потому что хочу попробовать. Предложение "Here's our books:" печатается просто отлично, поэтому я знаю, что оно вызывает функцию, но почему оно не печатает связанный список? Я сделал что-то неправильно? Я новичок в этом.

...