Probleme mit Debugger/Haltepunkt entfernt
-
Hallo zusammen,
ich benutze Visual Studio Express 2005 und habe eine Konsolenanwendung, die ich debuggen möchte:
int main(int argc, char *argv[]) { NavierCalc NaSt3DGPF(&argc,&argv); NaSt3DGPF.DoIt(); return(0); }Wenn ich nun in alle 3 Zeilen innerhalb von main einen Haltepunkt setze und die Programmausführung starte, so werden die ersten beiden Haltepunkte automatisch entfernt und nur der letzte "angesprungen". Woran kann das liegen?
Eine weitere Frage ist, was muss ich im Debuggen-Menu wählen, um eine Einzelschrittverfolgung zu haben, ohne aber das interne Funktionen wie z.B. fprintf im Disassembler "aufgelöst" werden?
Danke und Gruss
Lodo2609
-
die haltepunkte verschwinden nicht, sondern sie springen zu der ersten position an dem ein halten moeglich ist, du hast da rein zufaellig halt schon ein haltepunkt
setz mal einen direkt auf den kopf dann siehst du es
direkt im kopf oder in einer leerzeile kann man nicht springen da 1. der "kopf" nur noch eine adresse ist nach dem build, und leerzeilen sind einfach nicht mehr existent nach dem bau
-
ja aber die Zeilen
NavierCalc NaSt3DGPF(&argc,&argv);und
NaSt3DGPF.DoIt();sind doch weder Kopfzeile noch leer???
Ein weiteres Problem ist, dass in (Ausschnitt aus dem Code)
NavierCalc::NavierCalc(int* pargc,char*** pargv):Navier() { int i,j,k; time_to_run=0; printinfo=1 ; actual_fgh=0 ; Fch=NULL ; .... }wenn ich in der Zeile
Fch=NULL ;einen Haltpunkt setze, um die Variablen zu überwachen, time_to_run nicht wie erwartet 0 ist sondern einen beliebigen Wert annimmt. Wenn ich das Programm ohne Debugger laufen lasse, arbeitet es wie erwartet. Kann das Problem irgenwie damit zusammenhängen?
Gruss Lodo2609
-
ups, verlesen
das mit dem NULL ist evtl eine sachen das du versuchst die release version zu debuggen ?
kannst du die variable DIREKT nach dem NULL setzen auf NULL ueberpruefen sodass es true ergibt ?wegen den ersten problem kann ich dir leider doch nicht helfen
btw, du kannst die definitionen eigentlich auch mit in die initialisier liste des konstruktor packen {das ist besser},
aber das nur am rande