qsort — cppreference.com
Материал из cppreference.com
<tbody> </tbody>
| Определено в заголовочном файле |
||
|
|
||
Сортирует массив, на который указывает ptr, по возрастанию. Массив содержит count элементов размера size. Функция, на которую указывает comp, используется для сравнения объектов.
Параметры
| ptr | — | указатель на сортируемый массив | ||||||
| count | — | число элементов в массиве | ||||||
| size | — | размер каждого элемента массива в байтах | ||||||
| comp | — | функция сравнения, которая возвращает отрицательное целое значение, если первый аргумент меньше чем второй, положительное целое значение, если первый аргумент больше чем второй и ноль если они равны. Сигнатура функции сравнения должна соответствовать следующей:
<tbody>
</tbody>
Функция не должна модифицировать объекты передаваемые ей. |
Возвращаемое значение
(нет)
Пример
Следующая программа сортирует массив целых чисел, используя qsort()
#include <stdio.h> #include <stdlib.h> int compare_ints(const void* a, const void* b) { const int *arg1 = a; const int *arg2 = b; return *arg1 - *arg2; } int main(void) { int i; int ints[] = { -2, 99, 0, -743, 2, 3, 4 }; int size = sizeof ints / sizeof *ints; qsort(ints, size, sizeof(int), compare_ints); for(i = 0; i < size; i++) printf("%d ", ints[i]); printf("\n"); return EXIT_SUCCESS; }
Вывод: