1. 程式人生 > >qsort歸納學習(c語言版本)

qsort歸納學習(c語言版本)

serve www. 返回 char s regexp ever char* str ret

參考:https://www.cnblogs.com/ForeverJoker/archive/2013/05/25/qsort-sort.html

包含在<stdlib.h>

int (*cmp)(const void *,const void *);

qsort(*s, n, sizeof(s[0]), cmp);

包含4個參數,第一個傳入位置,第二個排序的量,第三個單個大小,第四個排序方式

對數組的排序

int 型

  int cmp(const void *a, const void *b){

      return *(int*)a - *(int*)b;//由小到大排序

       //return *(int *)b - *(int *)a; 由大到小排序 }

cmp函數的返回值,<0(不進行置換),>0(進行置換),0(不進行置換)。

double型:

    int cmp(const void * a, const void * b) {

     return((*(double*)a - *(double*)b>0)?1:-1); }

char:

    return (*(char *)a - *(char *)b);

struct型:

  待定

char s[][]型:

    int cmp(const void *a, const void *b) {

      return (strcmp((char*)a, (char*)b)); }

qsort歸納學習(c語言版本)