WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

 
 
Themen-Optionen Ansicht
Alt 07.06.2002, 12:37   #7
helmix
Jr. Member
 
Registriert seit: 27.08.2001
Ort: Wien
Alter: 59
Beiträge: 84


Standard

Der gcc compiler ist ganz schön schlau, er hat nämlich recht!
Der Visual C Compiler compiliert das dagegen ohne Murren (nur funkt. das Programm dann nicht)

Der Fehler ist folgender:
Ich nehme an, dein aArray ist ein Array von Strings, d.h. ein Pointer
auf Pointer von chars!
qsort 'füttert' die compare funktion mit pointern auf jeweils 2 Array-Einträge,
in unserem Fall also char** und nicht char*, wie es der strcmp gern hätte!!
Die Folge ist, dass so die Pointer im Array sortiert werden und nicht die Strings, sofern der strcmp da überhaupt mitspielt

Abhilfe:
Du musst doch eine eigene compare funktion schreiben, die so aussieht:

int compare(const void *arg1, const void *arg2)
{
return strcmp(*((char**)arg1), *((char**)arg2));
}

Damit sollte es dann funktionieren!

lg.
helmix
helmix ist offline   Mit Zitat antworten
 


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 08:44 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag