关于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 这样的错误,该怎么办呢?
----------------解决方案--------------------------------------------------------
强制转换成char*不就行了
----------------解决方案--------------------------------------------------------
楼上的兄弟,你回的帖子我都在看,你好强啊,斑竹的实力啊
----------------解决方案--------------------------------------------------------