Функция qsort
обычно используется в C для сортировки массива.Одним из параметров является указатель на функцию сравнения.Напишите функцию, чтобы она сравнивала два указателя любым способом, который вы хотите.Вы даже можете иметь различные функции сравнения, чтобы у вас был выбор во время выполнения, который будет применен.
int StudentCompare(const void * elem1, const void * elem2)
{
const struct student * left = (const struct student *) elem1;
const struct student * right = (const struct student *) elem2;
int result;
result = strcmp(left.firstName, right.firstName);
if (result == 0)
result = strcmp(left.lastName, right.lastName);
return result;
}