Форум вопросов и ответов

Форум вопросов и ответов (https://www.otvetnemail.ru/)
-   Ещё вопросы и ответы из архива 4 (https://www.otvetnemail.ru/esh-voprosy-i-otvety-iz-arhiva-4-829/)
-   -   Программирование: подскажите пожалуйста про qsort в c++? (https://www.otvetnemail.ru/esh-voprosy-i-otvety-iz-arhiva-4-829/programmirovanie-podskazhite-pozhalujsta-pro-qsort-v-c-1140747/)

Guest 20.01.2012 10:59

Программирование: подскажите пожалуйста про qsort в c++?
 
// initalise array of nodes
// здесь формируем массив nodes указателей на структуту TNode
// т.е nodes объявлен как TNode** nodes;
unsigned char j=0;
do
{
if (counter[j]==0) continue;
TNode *n = new TNode (j, counter[j]);
nodes = (TNode**) realloc(nodes, (++nodes_number)*4);
memcpy((TNode*) (nodes+(nodes_number-1)), &n, 4);
}
while (++j!=0);

// sort array
qsort(nodes, nodes_number-1, sizeof(TNode*), cmp );

где
int cmp (const void *a, const void *b) {
return ((TNode*)a)->weight - ((TNode*)b)->weight;
}

сортировка не работает.. я раньше qsort никогда не использовал, помогите пожалуйста разобраться что к чему.
у меня в итоге не получается сортировки массива nodes элементов TNode* по полю weight.


Часовой пояс GMT, время: 02:24.


© www.otvetnemail.ru - Форум вопросов и ответов.