kennen:lib:qsort
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
— | kennen:lib:qsort [2019-11-20 16:02] (aktuell) – angelegt - Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== qsort() ====== | ||
+ | ''# | ||
+ | |||
+ | <code cpp> | ||
+ | void qsort (void *array, size_t count, size_t size, | ||
+ | int (*compare)(const void*, const void*)) | ||
+ | </ | ||
+ | Quick Sort. | ||
+ | |||
+ | ==== Parameter ==== | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | |||
+ | Die Vergleichsfunktion '' | ||
+ | auf Feldelemente übernehmen und eine Ganzzahl liefern: | ||
+ | |||
+ | | '' | ||
+ | | '' | ||
+ | | '' | ||
+ | |||
+ | Wegen der strengeren Typprüfung ist in C++ ein Typecast erforderlich. | ||
+ | |||
+ | ==== Ergebnis ==== | ||
+ | Rückgabewert: | ||
+ | |||
+ | ==== Siehe auch ==== | ||
+ | [[sort]]. | ||
+ | |||
+ | ==== Beispiel ==== | ||
+ | <code cpp qsort.cpp> | ||
+ | #include < | ||
+ | #include < | ||
+ | |||
+ | int vergleich(const double* x, const double* y) | ||
+ | { | ||
+ | return *x - *y; | ||
+ | } | ||
+ | |||
+ | int main() | ||
+ | { | ||
+ | using namespace std; | ||
+ | double arr[] = { 3, 5, 4, 1, 2 }; | ||
+ | |||
+ | qsort(arr, 5, sizeof(double), | ||
+ | (int (*)(const void*, const void*)) vergleich); | ||
+ | |||
+ | cout << arr[0] << " | ||
+ | } | ||
+ | </ | ||