Beim Debuggen im Quellcode was verändern ( VC++ 2008 )
-
pmb schrieb:
Vllt ist es auch ne Einstellungssache
Deshalb habe ich dir den Link geschickt. Sieh mal nach oben!

EDIT: Und es gab schon viele, die sich gewundert haben, dass "sleep(50)" nicht kompiliert wird...

-
Ah sorry hab grad geschrieben wo du den link geschickt hast

-
Also jetzt kommt die Meldung zumindest nicht mehr. Aber jetzt hab ich das Problem dass er mir die Änderungen nicht übernimmt er springt praktisch drüber wie wenn sie nicht vorhanden währen
-
pmb schrieb:
Also jetzt kommt die Meldung zumindest nicht mehr. Aber jetzt hab ich das Problem dass er mir die Änderungen nicht übernimmt er springt praktisch drüber wie wenn sie nicht vorhanden währen
Sorry, aber das glaube ich nicht. Wenn du eine Zeile "x=0;" umänderst in "x=1;" (und der Debugger steht auch vor oder auf dieser Zeile), dann sollte x doch im Anschluss den Wert 1 haben, oder etwa nicht? Hast du das mal so überprüft oder gehst du nur vom Springen des Debugger-Zeigers aus?
-
Ist aber echt so
Hier mein Beispiel:i = m_strKurve.Find(","); // Jetzt steht in i 6 als Wert drin
Sleep(50); // <- Hier steht der Debuggerund jetzt schreibe ich
i = 1;
und geh mit F10 schrittweise drüber. Danach steht jetzt in i immernoch 6 drin
-
Und nachdem du F10 gedrückt hast, kompiliert er die Änderung und übernimmt sie angeblich?? Das siehst du ja im Ausgabe-Fenster. Was steht da?
-
-------- Bearbeiten und Fortfahren - Erstellen wurde gestartet --------
--------------------- Fertig ----------------------
Aber an dem Wert ändert sich nichts
-
Dann gib den Wert sicherheitshalber mal per OutputDebugString im Ausgabe-Fenster aus. Manchmal spinnt der Debugger auch ein bisschen. Eine eigene Ausgabe ist die sichere Methode, so etwas zu überprüfen.
-
Hat leider nichts gebracht. Steht immernoch das gleiche drin. Das gibts doch nicht. Da ist doch was faul
-
Zeig mal, wie du den Wert ausgibst.
-
i = 1;
strTmp.Format("%i",i);
OutputDebugString(strTmp);