PDA

View Full Version : Un How-To sul debugging ?


Tortellone
18-11-2002, 22:14
Esiste ?
So teoricamente a cosa serve, ma non so praticamente come farne uso...non so cosa significano le varie voci sotto il menù Debug :(

Breakpoint ? Watches ?? Cosa sono ?? Qualcuno mi spiega e mi fa un esempio ?? Come IDE uso Dev-C++ e Dev-Pas

Grazie anticipatamente :D

Tortellone
19-11-2002, 22:43
Up :(

bsummer
20-11-2002, 10:28
Fare debug significa analizzare il programma al fine di riscontrare/eliminare anomalie di funzionamento (aka bug).

A tale scopo vengono in aiuto del programmatore i debugger, utili applicazioni che permettono di eseguire il programma incriminato fornendo strumenti che ne permettano un'analisi accurata.

Solitamente i debugger permettono di esguire il programma in diverse modalita' come ad esempio la step-by-step (passo passo) dove ogni istruzione viene eseguita previa conferma del' utente. In questo modo e' possibile verificare lo stato del programma (memoria/registri/variabili) in ogni momento e verificare se il comportamento e' corrretto o meno. Se l'errore si trova in una determinata funzione , pero', potrebbe essere stressante star li ad eseguire via via tutte le istruzioni fino ad arrivare alla funzione incriminata. E' possibile percio' inserire dei Breakpoint: il programma e' esguti normalmente fino al raggiungimento dell'istruzione segnata col breckpoint, dopo di che' si passera' all'esecuzione passo passo.

Per monitorizzare lo stato del sistema vengono forniti alcuni strumenti rappresentati da finestre contenenti dati. Le piu' comuni sono quelle che mostrano lo stato dei registri della cpu, il dump di una zona di memoria, la finestra contenente il codice sorgente (se disponibil) o il codice assembler, una finestra dove si possono visualizzare i valori delle variabili usate (watches) una finestra dove si vede l'eventuale output.

I debugger funzionano bene o male tutti allo stesso modo, quindi non dovresti incontrare particolari difficolta' se utilizzi quello di un determinato ambiente piuttosto che un'altro.

Bye