C——qsort()排序指针数组的概括用法
qsort( 【* 指针,解引用后指向的是 等待排序的元素的类型 的指针数组 】,【count,数组中的指针解引用后的元素的数量】,【size,数组中的指针解引用后的元素的大小】 ,compare 【compare是回调函数,没有()】) int compare(const void *p1,const void *p2) { pNode_t pa = (pNode_t)p1; pNode_t pb = (pNode_t)p2; return (*pa).【排序元素】 - (*pb).【排序元素】; 这是升序排序
}
以排序Node_t类型元素为例子:
pNode_t a = (pNode_t )calloc(count, count * sizeof(Node_t)); pNode_t p = pHead; for (int i = 0; i < count; i++) { a[i] = *p; p = p->next; } qsort(a, count, sizeof(Node_t), compare);
浙公网安备 33010602011771号