我想知道第三个参数应该是什么,因为我从来没有见过这样的东西。
void sortPointers(void **ar, int n, int (*cmp)(const void *, const void *))
{
int j;
for (j = 1; j < n; j++)
{
int i = j - 1;
int *value = ar[j];
while (i >= 0 && cmp(ar[i], value) > 0)
{
ar[i+1] = ar[i];
i--;
}
ar[i+1] = value;
}
}
答案 0 :(得分:0)
该参数是指向一个函数的指针,该函数对两个void *指针进行比较。这种sortPointers(..)函数的实现方式使其调用者可以使用任何比较函数,从而增加了这种灵活性。