void selection_sort(void *vector[], int length, int (*less)(void *, void *)) { for (int k = 1; k < length; k++) { void *temp = vector[k]; int i; for (i = k - 1; i >= 0; i--) { if (less(temp, vector[i])) break; vector[i + 1] = vector[i]; } vector[i + 1] = temp; } }