qsort归纳学习(c语言版本)
参考: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)); }
努力变得不白