Как решить эту проблему Node в C++C++

Программы на C++. Форум разработчиков
Anonymous
Как решить эту проблему Node в C++

Сообщение Anonymous »

Код

Код: Выделить всё

node* ngan(node* pHead, node* pTail, ssdon comparedon) {
node* ngan = pTail;
node* prev = NULL, *cur = pHead, *tail = ngan;
while (cur != ngan) {
if (comparedon(cur, ngan)) {
if (prev)
prev->next = cur->next;
node* temp = pHead->next;
cur->next = temp;
pHead->next = cur;
swapnode(cur, temp);
tail = cur;
cur = prev ? prev->next : temp;
}
else {
prev = cur;
cur = cur->next;
}
}

swapnode(tail, ngan);

return tail;
}

void quicksortdon(node** pHead, node* pTail, ssdon comparedon) {
if (!(*pHead) || (*pHead) == pTail)
return;

node* tail = *pHead;
while (tail->next != NULL) {
tail = tail->next;
}
node* newHead = ngan(*pHead, pTail,comparedon);
quicksortdon(pHead, newHead, comparedon);
quicksortdon(&(newHead->next), pTail, comparedon);
}

Компаратор

Код: Выделить всё

typedef bool (*ssdon)(const node*,const node*);

bool comparemasvdon(const node* a, const node* b) {
const sv& sv1 = a->data;
const sv& sv2 = b->data;
return sv1.maSV < sv2.maSV;
}
У меня возникла проблема при выполнении этих функций, описанных выше, они не сработали.
У меня возникла ошибка под названием «Ошибка сегментации в typedef».

Код: Выделить всё

typedef struct sinhvien {
string maSV;
string ho;
string ten;
string lop;
float diem;
} sv;
Я старался изо всех сил, хотя ИИ все еще не работает. Пожалуйста, помогите мне

Подробнее здесь: https://stackoverflow.com/questions/784 ... oblem-in-c

Вернуться в «C++»