首页 > 代码库 > qsort 函数用法
qsort 函数用法
用 法: void qsort(void *base, int nelem, int width, int (*fcmp)(const void *,const void *));
各参数:
1 待排序数组首地址
2 数组中待排序元素数量
3 各元素的占用空间大小
4 指向比较函数的指针 : 注意这里的比较函数必须是返回int型,且2个形参都是 const void * 类型 ,我们在对比较函数进行实现的时候必须告诉函数传入形参的具体指针类型。
例如:我们要对字符串数组进行排序
1 char** strNum = new char*[lenght]; //指向字符指针的指针,即字符串的数组 2 3 qsort(strNum ,lenght ,sizeof(char*), compare); 4 5 int compare(const void* str1 , const void* str2)//传入形参时没有告诉函数具体类型,这里的str1和str2是strNum 数组元素的指针,所以因该是char**类型。 6 { 7 return strcmp( *(char**)str1,*(char**)str2 );//先将形参转换成实际类型,然后进行操作,这里是进行解引用,得到字符串值,调用strcmp函数对字符串进行比较。 8 }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。