QT im Debug Modus stürtzt mit einem ASSERT ab (QString) !?
Verfasst: 4. Januar 2006 17:18
Hallo Leute,
ich würde gerne mein Programm mit gdb debugen. Aber sobald ich die Debug-Version erstelle, dann stürtzt das Programm mit follgender Fehlermeldung ab:
Ich verwende QT 4.1.0 und MinGw 5.0
Es ist nur ein einfaches zeichenweises kopieren eines Strings.
Hier mal der Code:
ich habe diese Schleife im gdb durchlaufen. Es kommt zu diesen ASSERT, wenn das letzte Zeichen von msg gelesen wird (in diesem Falle beim 's'). Aber das kann doch nicht sein !? (das 'a' wird noch gelesen und in temp angefügt, aber beim 's' stürzt es mit der ASSERT-Meldung ab.
Was bedeutet dieser ASSERT in qstring.h? Und wieso nur im Debug-Modus?
Vielen Dank schonmal und viele Grüße
Ciao John
ich würde gerne mein Programm mit gdb debugen. Aber sobald ich die Debug-Version erstelle, dann stürtzt das Programm mit follgender Fehlermeldung ab:
Natürlich habe ich versucht den Fehler mit gdb nachzuvollziehen. Leider kann ich keinen logischen Fehler erkennen. Im Release-Modus klappt auch alles so wie es soll.ASSERT: "i >= 0 && i < size()" in file C:/Qt/4.1.0sh/include/QtCore/../../src/corelib/tools/qstring.h, line 541
Ich verwende QT 4.1.0 und MinGw 5.0
Es ist nur ein einfaches zeichenweises kopieren eines Strings.
Hier mal der Code:
Code: Alles auswählen
int i;
QChar c;
QString temp, msg;
temp = "";
msg = "irgendwas";
for(i = 0; i < msg.length(); i++){
c = msg.at(i);
temp += c;
}
Was bedeutet dieser ASSERT in qstring.h? Und wieso nur im Debug-Modus?
Vielen Dank schonmal und viele Grüße
Ciao John