Video: Linux Tutorial for Beginners: Introduction to Linux Operating System 2024
Uneori, problema cu instrucțiunile de programare C nu poate fi determinată doar prin vizionarea program de flux. Nu trebuie să coborâți în memorie și să priviți valoarea unei variabile în timp ce codul rulează. Codul:: Debuggerul Block vă permite să urmăriți orice variabilă dintr-un program, indicând conținutul variabilei în timp ce programul rulează.
WHERE VARIABLE LURK
#include #include int main () {int x; int * px; px = & x; pentru (x = 0; x <10; x ++) printf ("% dn", * px); return 0;}
Exercițiu 1 : Creați un nou cod:: Blochează proiectul cu depanare activă. Copiați codul sursă de mai sus în principal. c fișier. Construiți și alergați. Verificați dacă funcționează.
Nu, sau nu ar trebui, decât dacă ai greșit ceva. Timp pentru depanare! Urmați acești pași:
-
Faceți clic pe mouse-ul pentru al plasa la începutul liniei 6, unde este declarată variabila întreagă x .
-
Faceți clic pe butonul Run to Cursor din bara de instrumente Debugging.
-
Faceți clic pe butonul Debugging Windows.
-
Alegeți comanda Ceasuri.
Apare fereastra Ceasuri.
-
Faceți clic pe mouse-ul în prima cutie albastră din fereastra Ceasuri.
-
Introduceți x pentru variabila x și apăsați tasta Enter.
-
Introduceți px pe următoarea linie pentru a examina locația de memorie stocată în indicatorul de pixeli. Apăsați tasta Enter.
-
Introduceți * px pe linia a treia pentru a examina conținutul locației de memorie stocată după pixel. Apăsați tasta Enter.
Este posibil să vedeți valori pentru acele variabile, deși valorile sunt neinitializate. De exemplu, pe ecran, variabila x menține valoarea 56, ceea ce reprezintă orice gunoi aleatoriu apărut în memorie înainte ca variabila să primească o valoare.
Până când o variabilă este inițializată, conținutul său este junk.
-
Faceți clic pe butonul Linia următoare de pe bara de instrumente Debugging până când cursorul este pe linia 10, începutul buclă for.
Pe măsură ce valoarea indicelui px este alocată locației de memorie a variabilei x , acordați atenție ferestrei ceasurilor. Imediat, veți vedea că o adresă de memorie apare la variabile px și veți vedea setul de variabile * px egal cu orice valoare este alocată variabilei x . Indicatorul a fost inițializat!
-
Faceți din nou clic pe butonul Următoare linie.
Când începe buclă for, inițiază valoarea variabilei x . Vedeți schimbarea valorii în fereastra Ceasuri, împreună cu valoarea * px. Valoarea px (adresa variabilei x ) nu se modifică.
-
Continuați să treceți prin cod pentru a urmări modificarea valorilor.
-
Faceți clic pe butonul Stop după ce ați terminat.
Examinarea variabilelor în memorie este încă o modalitate bună de a vedea ce se întâmplă cu codul. Dacă variabilele nu se deschid așa cum ar trebui, trebuie să verificați instrucțiunile care manipulează aceste variabile.
De asemenea, examinând indicii în memorie, puteți obține o idee mai bună despre cum funcționează pointerii.