段错误指针



我试图实现一个链表数据类型的小样本。我创建了一个保存值的structNode,一个跟踪所有节点的structList(链表格式)。最后是一个类,它是两个结构的通用数据类型。

当我运行程序时,我总是在到达步骤时出现段故障错误:item->link[i++]=新节点(输入)

代码:

struct Node
{
    int val;
    Node();
    Node(int x);
};
struct List
{
    Node *link[20];
    List();
};
class pol
{
    public:
        void read_txt(ifstream &file);
    private:
        List *item;
};
void pol::read_txt(ifstream &file)
{
    int input, i;
    i = 0;
    file >> input;
    cout << "Value read from the file: " << input << endl;
    while(input != 0)
    {
        item.link[i++] = new Node(input);
        file >> input;
        cout << "Value read from the file: " << input << endl;
    }
}

我想做的是,创建一个值为"input"的新节点,该值是我从读取文件中获得的。接下来,我想创建一个连接了所有节点的链表。

成员item从不初始化。就我所见,根本没有理由把它当作一个指针。只需将其设为List item;即可。

相关内容

  • 没有找到相关文章

最新更新