Я хочу точно знать, каким должен быть третий параметр, потому что я никогда не видел ничего подобного.реализация моей книги вставки сортировки в C
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;
}
}
Это указатель на функцию. Теперь вы должны знать, что делать. –
Третий параметр - это функция сравнения (указатель на a), которая берет два элемента для сортировки и сравнивает их. Если элементы в порядке, дается отрицательное число (или 0 в случае равенства). Если элементы находятся в неправильном порядке, дайте положительный результат, и они будут заменены. То есть его вывод должен быть похож на 'strcmp'. –
Оформить заказ ['qsort' documentation] (http://en.cppreference.com/w/c/algorithm/qsort). Он имеет 'cmp' в качестве аргумента, который служит той же цели. –