qsort



  • Hi,

    folgendes Problem:

    das nachfolgende Array soll sortiert werden:
    [code]**
    double values[] = { 40.22201, 40.2221, 40.2222, 40.2223, 40.22202, 40.22221 };
    **[/code]

    Ich benutze folgende Vergleichsfunktion gem. der <stdib.h>:

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

    Ich erhalte eine falsche Reihenfolge.

    Setze ich als Rückgabetyp double statt int, erhalte ich natürlich auch eine
    Fehlermeldung.

    Was kann ich noch machen?
    Klar, eine eigene Funktion schreiben, aber kann ich die Funktion aus der
    <stdlib> noch verwenden?

    mfg
    pierre



  • mach doch lieber vergleiche anstatt zu subtrahieren

    [ Dieser Beitrag wurde am 14.03.2003 um 17:27 Uhr von Shade Of Mine editiert. ]



  • @Shade Of Mine ,

    super....
    danke für Deine Idee. Es klappt!!

    mfG
    pierre


Anmelden zum Antworten