So lösen Sie Probleme der Programmierung C mit printf () und puts ()

Wenn Sie nicht herausfinden können, was mit einem C-Programm vor sich geht, und Sie wollen nicht, dass es durch den Debugger auszuführen (oder wenn Sie die Debug-Build-Option enthalten haben), können Sie die printf () und puts verwenden ( ) Funktionen als Debug-Freunde.

Menu

Wie zu dokumentieren Probleme

Nehmen wir an, dass der Code eine Funktion, die Variable erhält, hat x, aber irgendwie, variable x nie auftaucht. Fügen Sie die folgende Zeile in den Code:

printf ( "Wert von" x "auf Linie 125:% d n", x) -

Diese Aussage mag scheinen tatsächlich an mehreren Stellen, den Wert der Variablen Tracing x wie es sich bewegt durch den Code. Zugegeben, mit dem Debugger die Uhren Fenster mit auf wäre besser, aber manchmal printf () ist viel schneller.

Wenn Sie nicht eine Variable Tracking und Sie wollen nur wissen, warum ein Stück Code nicht ausgeführt wird, legen Sie eine puts () Anweisung, so etwas wie folgt aus:

puts ( "Du hast zu hier") -

Wenn Sie den vorhergehenden Text in der Ausgabe sehen, wissen Sie, dass der Code angesprochen wird, aber noch nicht ausgeführt werden kann. Das ist, wenn Sie durch den Code sprechen, suchen Sie nach einem Doppelgleichheitszeichen, wenn Sie ein einzelnes Gleichheitszeichen zu verwenden, bedeutete, und versuchen, andere Tricks.

Obwohl Einfügen eines printf () oder puts () Anweisung in Ihren Code nicht so anmutig sein, wie mit einem Debugger, und es ist sicherlich nicht sagen, # 147-Das Problem ist hier, # 148- es ist keine schlechte Work-around. Denken Sie daran, die Aussagen wieder heraus zu ziehen!

Wie Kommentare zu speichern zukunfts Sie

Eine andere Sache, die Sie tun können, um unnötige Leid helfen beheben, ist einfach, das Problem in den Code zu beschreiben, durch Kommentare mit. Es kann das Problem jetzt nicht beheben, aber für eine zukunfts Sie den Code auf der ganzen Linie suchen, ist es eine echte Hilfe- schlägt es versucht, die boo-boo alle immer wieder zu entdecken.

Beispielsweise:

for (y = x + a-y

Menü