Code läuft unterschiedlich
-
Hallo,
bitte entschuldigt die seltsame Überschrift. Ich habe ein Problem mit der Ausführbarkeit meiner Codes (C++).
Konkret schreibe ich irgendwas (letzens der einfache Taschenrechner von Stroustrup aus Kapitel 6). Das Programm lässt sich kompilieren und ausführen, aber es kommt nur Mist raus, wenn man das Programm benutzt. Nach stundenlanger Fehlersuche hab ich aufgegeben. Am nächsten Tag setz ich mich wieder ran - und plötzlich geht's, ohne das ich was verändert habe.
Das ging mir jetzt mehr als einmal so.
Liegt das irgendwie am System? Ich hatte auch Probleme mit den Windows Updates (Win 7), die auf Unstimmigkeiten mit dem .NET-Framework zurückzuführen waren. Mach ich was Grundlegendes falsch?
-
das hört sich ein wenig nach falschen erwartungen an.
ok, wenn dein windows irgendwelche updates nicht installieren kann, kann das sehr viele gründe haben. ich selber kenne auch den fall, dass die .NET frameworks nicht installiert werden können. aber ne lösung weiss ich nicht.
aber das hat wenig mit c++ oder programmieren zu tun.
ich denke, dass du am einen tag einfach irgendwas eingegeben hast in dein programm, dir über die ausgabe nicht im klaren warst und dementsprechend nicht nachvollziehen oder prüfen konntest ob das richtig oder falsch war. am nächsten tag hast du dann nachvollziehbare eingaben getätigt...
wenn ich einen primzahl test schreibe, würde ich als test auch nicht unbedingt als erstes 214738264893765983753748933251975248903460927568758393 reinschieben, sondern halt erstmal zahlen von denen ich weiss, dass sie prim oder nicht sind (2,3,5,7,11,13,17,19,23,29,31......)
-
Ich habe die gleichen Sachen am nächsten Tag nochmal eingegeben, weil ich mir aufgeschrieben hatte, was zu falschen Ausgaben führt.
Aber vielleicht hast du recht und ich war einfach schon zu unkonzentriert.
-
das passiert schon manchmal nachem langen tag
da sieht man den wald vor lauter bäumen nicht mehr. mach dir da mal keine sorgen.
mir passierts auch manchmal, dass ich mir ne lösung für ein problem ausdenke, die total super ist, ich implementiert die. ok, dann schlaf ich eine nacht drüber und am nächsten tag hab ich ne viel bessere lösung...
-
Dieser Thread wurde von Moderator/in pumuckl aus dem Forum C++ (auch C++0x und C++11) in das Forum Rund um die Programmierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
könnte auch ein heisenbug sein, hast du alle variablen initialisiert?
-
Jo, zeig einfach mal den Code her.
-
Lieschen Müller schrieb:
Das ging mir jetzt mehr als einmal so.
Ich hatte mal damals zu Zeiten von Turbo Pascal 6.0 unter Turbo Pascal 6.0 so ein Problem.
Daheim auf meinem 486er entwickelt lief das Primzahlenfindeprogramm super, aber in der Schule auf dem Pentium 133 MHz Rechner lief es dann falsch.
Das Resultat war ein Fehler im Code, der sich aber nur auf dem Pentium Rechner negativ auswirkte und daran war kein Pentium Bug und auch kein Runtime Error 200 schuld.
Ich würde an deiner Stelle also den Code noch einmal gründlich mit einem Debugger durchchecken.
Sehr hilfreich ist auch, so meine Erfahrung, den Code auch unter einem anderern Betriebssystem zu testen, so fallen dann auch sehr schnell Fehler im Code auf, die auf der einen Plattform (z.B. Windows) keine Fehler verursachen aber auf der anderen Plattform (z.B. Linux) sofort zu einer fehlerhaften Ausgabe führen und umgekehrt.
-
manchmal hilft ein kompletter rebuild (falls man incremental baut).