【发布时间】:2019-02-04 15:54:35
【问题描述】:
我的代码中出现了用于实现链表的分段错误。任何帮助表示赞赏。谢谢。我在这里特意添加了结构方法。
struct node{
int data;
node *next;
node(int data){
this->data = data;
this->next = NULL;
}
node(int data, node *next){
this->data = data;
this->next = next;
}
int getData(){
return data;
}
node* getNextNode(){
return next;
}
};
class LinkedList {
private:
node *head,*tail;
public:
linked_list(){
head=NULL;
tail=NULL;
}
void addNode(int data){
node *temp = new node(data);
if(head==NULL){
head = temp;
tail = temp;
}
else {
tail->next = temp;
tail = temp;
}
}
void display(){
node *temp;
temp = head;
cout<<"PRINTING LINKED LIST"<<endl;
while(temp!=NULL){
cout<<temp->getData()<<" ";
temp = temp->getNextNode();
}
}
};
当我调用以下代码时出现分段错误:
LinkedList myLinkedList;
myLinkedList.addNode(1);
myLinkedList.addNode(2);
myLinkedList.display();
堆栈溢出要求提供更多详细信息,以便我发布此问题。胡言乱语,请忽略以下部分: 儿童歌曲《Humpty Dumpty》的歌词:Humpty Dumpty 坐在墙上,Humpty Dumpty 摔倒了所有国王的马和所有国王的人。
【问题讨论】:
-
我对 SO 问题的印象是,如果它没有段错误,那么它就不是链表。你的问题是什么?你用过调试器吗?
-
顺便说一句,当 SO 要求您提供详细信息时,它并不是在询问儿童歌曲的详细信息...
-
我认为最后一点的答案是“是的,先生。是的,先生。三个袋子满了。”
-
其实你对儿歌的品味并不高。这是一个更好的:) : youtube.com/watch?v=Mx8s6ZACZFU
-
但是感谢@AntoineMorrier 的推荐,希望我不需要它:)
标签: c++ linked-list segmentation-fault