BLATT   >   Grundlagen   >   C-Library Arbeitsmaterialien  |  Grundlagen  |  ÖH-Wahlen  |  Statistiken  |  Unirecht  
    ▸ Übersichten       ▸ Astronomie       ▸ C-Library       ▸ Digitales       ▸ Mathematik       ▸ Periodensystem
Übersichten
    • Größenvorsätze
    • SI-Basisgrößen
    • abgeleitete Größen
    • Konstanten
    • sonstige Einheiten
    • Greek Chars
    • Einheitskonten
    • Funktionsgrafik
    • Wellenformen
    • Zeichensatz

Astronomie
    • Astrophysik
    • Sonnensystem
    • Sternenklassen

C-Library
    • math.h
    • stdio.h
    • stdlib.h
    • string.h
    • time.h

Digitales
    • Aussagelogik
    • Flip-Flops
    • Decoder

Mathematik
    • Algebra
    • Geometrie
    • Trigonometrie
    • Differenzieren
    • Integrieren

Periodensystem
    • Übersicht
    • alphabetisch
    • Aggregatzustand
    • Metall-Eigenschaft
    • Säure-Eigenschaft

Wörterbücher
C-Library

stdlib.h     qsort     Sortieren mittels quicksort


Format:void qsort (void * base, size_t num, size_t width, int (*fncompare)(const void *, const void *) );
 
Bedeutung:Sortiert num Elemente der Größe width eines Arrays mit Quicksort.
Parameter:base: Zeiger auf den zu sortierenden Array
num: Anzahl der Elemente im Array
width: Größe eines Elements in Byte
fncompare: Vergleichsfunktion (siehe Tabelle)
Rückgabewert:    keiner.


Vergleichsfunktion-Tabelle

Deklaration: int fncompare (const void * elem1, const void * elem2 );

<0*elem1 vor *elem2
  0*elem1 == *elem2  
>0  *elem1 nach *elem2


Beispiel:

#include <stdio.h>
#include <stdlib.h>
int values[] = { 40, 20, 80, 30, 100, 10 };

int compare (const void * a, const void * b)
{
    return ( *(int*)a - *(int*)b );
}

int main ()
{
    int n;
    qsort (values, 6, sizeof(int), compare)
    for (n=0; n<6; n++)
    {
        printf ("%d, values[n]);
    }
    return 0;
}