also ich habe jetzt in meinem "schlauen buch" nachgesehen, und folgendes gefunden:
Zitat:
Die Vergleichsfunktion compare muss normalerweise selbst definiert werden. Die Parameter dieser Funktion sind zwei Zeiger auf die Vektorelemente, die zu vergleichen sind. Die Zeiger werden als "typenlose Lesezeiger" deklariert.
|
Deshalb meine Frage: Hast du eine solche Funktion deklariert, und sieht sie ungefähr wie folgt aus?
Code:
int compare( const void *p1, const void *p2)
{
if( *(int *)p1 > *(int *)p2 ) retrun (1);
// ersetze (int *) durch den Datentypen den du bei deinem Array verwendest
else if( *(int *)p1 < *(int *)p2 ) return (-1);
// ersetze (int *) durch den Datentypen den du bei deinem Array verwendest
else return (0);
}
Die Returnwerte entsprechen dann denen die qsort() verwendet um zu entscheiden, wie die Werte zu sortieren sind:
Zitat:
Der Return-Wert ist kleiner als 0, gleich 0, oder größer als 0, je nachdem ob das erste Vektorelement kleiner, gleich oder größer als das zweite Element ist.
|
Hoffe ich konnte weiterhelfen...
PredeX