gpt4 book ai didi

c++ - 链表c++代码错误

转载 作者:太空宇宙 更新时间:2023-11-04 11:32:38 24 4
gpt4 key购买 nike

我是 C++ 新手。我已经为链表编写了 C++ 代码。在 eclipse 中运行代码后,我收到一条错误消息,提示“linkedlist.exe 停止工作”。谁能告诉我哪里出错了。在代码中,我创建了一个链表并在其中插入了几个值。然后我写了一个语句来打印元素。

#include<iostream>
#include<cstdlib>
using namespace std;
struct Node
{
int data;
Node* P;
};
Node* H;
void Insert(int data)
{
Node* temp=new Node();
temp->data=data;
temp->P=NULL;
Node* temp1=H;
while(temp1->P!=NULL)
{
temp1=temp1->P;
}
temp1->P=temp;
}
int main()
{
cout<<"linked list"<<endl;
Insert(1);
Insert(2);
Insert(3);
Node* Print=H;
while(Print!=NULL)
{
cout<<Print->data<<endl;
}

}

最佳答案

// Initialize H.
Node* H = NULL;

void Insert(int data)
{
Node* temp=new Node();
temp->data=data;
temp->P=NULL;

// If there is nothing in the list, make the new Node the head.
if ( H == NULL )
{
H = temp;
}
else
{
Node* temp1=H;
while(temp1->P!=NULL)
{
temp1=temp1->P;
}
temp1->P=temp;
}
}

更新

用于打印列表的 while 循环需要:

while(Print!=NULL)
{
cout<<Print->data<<endl;
Print = Print->P; // Missing in your code.
}

关于c++ - 链表c++代码错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24093469/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com