Cuprins:
Video: From C to Python by Ross Rheingans-Yoo 2024
Când nu poți da seama ce se întâmplă cu un program C și nu vrei să îl rulați prin depanator (sau când nu ați inclus opțiunea de construire a depanării), puteți utiliza funcțiile printf () și puts () ca prieteni de depanare.
Cum se documentează problemele
Să presupunem că codul are o funcție care primește variabila x , dar într-un fel, variabila x nu apare niciodată. Introduceți următoarea linie în cod:
printf ("valoarea lui 'x' la linia 125:% dn", x);
Această instrucțiune poate apărea în mai multe locuri, urmărind valoarea variabilei x în timp ce se mișcă prin codul dvs. Acordat, folosirea ferestrei Ceasuri cu debuggerul ar fi mai bine, dar, uneori, utilizarea printf () este mult mai rapidă.
Dacă nu urmăriți o variabilă și doriți doar să știți de ce nu executați o bucată de cod, introduceți o instrucțiune puts (), ceva de genul:
pune ("Ai ajuns aici");
Când vedeți textul precedent în ieșire, știți că codul este abordat, dar este posibil să nu fie executat. Atunci când vorbiți prin cod, căutați un semn dublu-egal atunci când intenționați să folosiți un singur semn egal și încercați alte trucuri.
Deși introducerea unei instrucțiuni printf () sau puts () în codul dvs. poate să nu fie la fel de grațioasă ca și utilizarea unui depanator și cu siguranță nu spune: "Problema este chiar aici", nu este o muncă proastă. Nu uitați să trageți din nou declarațiile!
Cum să salvezi comentariile pentru viitor - tu
Un alt lucru pe care îl poți face pentru a rezolva vestirea neplăcută este pur și simplu să descrii problema în cod utilizând comentariile. S-ar putea să nu remediem problema acum, dar pentru viitor - căutând codul pe linie, este un ajutor real; bate încercarea de a descoperi boo-boo din nou. De exemplu:
pentru (y = x + a; y
În acest exemplu, nota reamintește viitorului că declarațiile nu fac ceea ce sunt destinate, o sugestie cu privire la ce să căutați într-o soluție.De asemenea, puteți folosi comentariile pentru a vă oferi sugestii viitoare despre cum să îmbunătățiți codul, lucruri de înăsprire sau noi caracteristici pe care tocmai nu aveți timp să le adăugați în prezent,