세그먼트 반복 오류가이 while 루프에서 발생한다는 것을 알고 있습니다 : (while(temp != NULL){temp = temp->next;}
), 그 이유는 알 수 없습니다.Segmentation 오류를 표시하는 클래스 C++의 링크 된 목록 구현
#include<iostream>
using namespace std;
class zDepthList {
typedef struct node {
int data;
node* next;
node* prev;
} Node;
public:
zDepthList() {
head = NULL;
}
zDepthList(int array[], int length) {
Node *temp, *ptr;
int i = 0;
while(i != length - 1) {
temp = head;
ptr = new Node;
ptr->data = array[i];
i++;
ptr->next = NULL;
if(head == NULL) {
head = ptr;
ptr->prev = NULL;
}
else {
while(temp != NULL) {
temp = temp->next;
}
}
temp->next = ptr;
ptr->prev = temp;
}
}
void out(const char order) {
cout << head->data << endl;
return;
}
private:
Node *head;
};
주 프로그램에서 어떻게이 수업을 사용하는지 확인해야합니다. – vincent
우리는 당신 (집) 일을하기로되어 있지 않습니다. –
내 메인은 30 개의 요소와 배열의 길이의 배열을 전달합니다 (zDepthList z (1, 30);). 그것은 함수를 호출합니다 (z.out ('f')). – aashman