![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
|
Themen-Optionen | Ansicht |
![]() |
#7 |
Jr. Member
![]() Registriert seit: 27.08.2001
Ort: Wien
Alter: 59
Beiträge: 84
|
![]() 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 |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|