【发布时间】:2014-10-10 07:31:35
【问题描述】:
void qsort (void* base, size_t num, size_t size,
int (*compare)(const void*,const void*));
当比较函数是 int 类型时,为什么 qsort 函数需要 int* 返回类型进行比较?
int compare (const void * a, const void * b)
{
if ( *(MyType*)a < *(MyType*)b ) return -1;
if ( *(MyType*)a == *(MyType*)b ) return 0;
if ( *(MyType*)a > *(MyType*)b ) return 1;
}
谁能解释一下,我的程序因此无法编译。谢谢! 取自此来源的代码: http://www.cplusplus.com/reference/cstdlib/qsort/
【问题讨论】:
-
它不需要
int *。