std::qsort
Материал из cppreference.com
![]() |
Эта страница была переведена автоматически с английской версии вики используя Переводчик Google.
Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке. Щёлкните здесь, чтобы увидеть английскую версию этой страницы |
Определено в заголовочном файле <cstdlib>
|
||
void qsort( const void *ptr, size_t count, size_t size, int (*comp)(const void *, const void *) ); |
||
Сорта данного массива, на который указывает
ptr
в порядке возрастания. Массив содержит элементы count
размер size
. Функция, на которую указывает comp
используется для сравнения объектов.Оригинал:
Sorts the given array pointed to by
ptr
in ascending order. The array contains count
elements of size size
. Function pointed to by comp
is used for object comparison.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Содержание |
[править] Параметры
ptr | - | Указатель на массив для сортировки
Оригинал: pointer to the array to sort Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
count | - | Количество элементов в массиве
Оригинал: number of element in the array Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
size | - | Размер каждого элемента массива в байтах
Оригинал: size of each element in the array in bytes Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
comp | - | comparison function which returns a negative integer value if the first argument is less than the second, a positive integer value if the first argument is greater than the second and zero if the arguments are equal. int cmp(const void *a, const void *b); The function must not modify the objects passed to it. |
[править] Возвращаемое значение
(Нет)
[править] Заметки
Тип элементов массива должно быть тривиальным' типа, в противном случае поведение не определено.
Оригинал:
The type of the elements of the array must be a trivial type, otherwise the behavior is undefined.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
[править] Пример
Следующие виды кода массив целых чисел с помощью
qsort()
.
Оригинал:
The following code sorts an array of integers using
qsort()
.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Запустить этот код
#include <iostream> #include <cstdlib> int compare_ints(const void* a, const void* b) // comparison function { int* arg1 = (int*) a; int* arg2 = (int*) b; if (*arg1 < *arg2) return -1; else if (*arg1 == *arg2) return 0; else return 1; } int main() { int a[] = { -2, 99, 0, -743, 2, 3, 4 }; int size = 7; std::qsort(a, size, sizeof(int), compare_ints); for (int i = 0; i < size; i++) { std::cout << a[i] << " "; } std::cout << '\n'; }
Вывод:
-743 -2 0 2 3 4 99
[править] См. также
поиск массиве элемент неопределенного типа Оригинал: searches an array for an element of unspecified type Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (функция) | |
сортирует диапазон в порядке возрастания (шаблон функции) | |
(C++11) |
проверяет, является ли тип тривиально Оригинал: checks if a type is trivial Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (шаблон класса) |
C documentation for qsort
|