标题:关于stdlib.h中qsort是如何实现的
只看楼主
diytz
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2006-9-1
 问题点数:0 回复次数:2 
关于stdlib.h中qsort是如何实现的
请问stdlib.h中的库函数 void qsort(void *base,size_t n,size_t size,int (*cmp)(const void *,const void *))
是如何实现的,我想自己实现一个类似的插入排序的函数,函数原型是这样的:

void isort(void *base,int size,int left,int right,int (*cmp)(const void *,const void *))
这里 size 和 qsort中的size一样,表示指针指向的对象的长度。

由于需要访问base后面的成员,比如 base + left,由于base的数据类型是 void *,所以会出现
error C2036: 'void *' : unknown size 这样的错误,该怎么办呢?
搜索更多相关主题的帖子: void qsort stdlib base int 
2007-05-22 14:46
leeco
Rank: 4
等 级:贵宾
威 望:10
帖 子:1026
专家分:177
注 册:2007-5-10
得分:0 
强制转换成char*不就行了
2007-05-22 19:37
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
得分:0 
楼上的兄弟,你回的帖子我都在看,你好强啊,斑竹的实力啊

学习需要安静。。海盗要重新来过。。
2007-05-22 19:40



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-141494-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.338849 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved