Fortran - Programma di debug
Uno strumento debugger viene utilizzato per cercare gli errori nei programmi.
Un programma di debug passa attraverso il codice e consente di esaminare i valori nelle variabili e in altri oggetti dati durante l'esecuzione del programma.
Carica il codice sorgente e dovresti eseguire il programma all'interno del debugger. I debugger eseguono il debug di un programma tramite:
- Impostazione dei punti di interruzione,
- Passando attraverso il codice sorgente,
- Impostazione dei punti di osservazione.
I punti di interruzione specificano dove il programma deve arrestarsi, in particolare dopo una riga di codice critica. Le esecuzioni del programma dopo che le variabili sono state controllate in un punto di interruzione.
I programmi debugger controllano anche il codice sorgente riga per riga.
I punti di controllo sono i punti in cui è necessario controllare i valori di alcune variabili, in particolare dopo un'operazione di lettura o scrittura.
Il debugger gdb
Il debugger gdb, il debugger GNU viene fornito con il sistema operativo Linux. Per il sistema X Windows, gdb è dotato di un'interfaccia grafica e il programma si chiama xxgdb.
La tabella seguente fornisce alcuni comandi in gdb:
Comando | Scopo |
---|---|
rompere | Impostazione di un punto di interruzione |
correre | Inizia l'esecuzione |
cont | Continua l'esecuzione |
Il prossimo | Esegue solo la riga successiva del codice sorgente, senza passare ad alcuna chiamata di funzione |
passo | Eseguire la riga successiva di codice sorgente entrando in una funzione in caso di chiamata di funzione. |
Il debugger dbx
C'è un altro debugger, il debugger dbx, per Linux.
La tabella seguente fornisce alcuni comandi in dbx:
Comando | Scopo |
---|---|
interrompi [var] | Imposta un punto di interruzione quando il valore della variabile var cambia. |
fermati in [proc] | Arresta l'esecuzione quando viene inserita una procedura proc |
fermati a [linea] | Imposta un punto di interruzione su una riga specificata. |
correre | Inizia l'esecuzione. |
cont | Continua l'esecuzione. |
Il prossimo | Esegue solo la riga successiva del codice sorgente, senza passare ad alcuna chiamata di funzione. |
passo | Eseguire la riga successiva di codice sorgente entrando in una funzione in caso di chiamata di funzione. |