Per impostare i punti di interruzione con la riga di comando, dbstop
è lo strumento (più dbclear
per cancellare i punti di interruzione e dbstatus
per elencarli).
Attualmente ci sono 17 forme diverse a dbstop
, che consentono di specificare varie combinazioni di:
- L'M-file in cui per fermare
- Linea numero
- Sub-funzione
Condizionale a un'espressione arbitraria. Ad esempio,
dbstop in myFun.m at 224 if ~exist('x','var')
- In qualsiasi errore di run-time (
dbstop if error
)
- A un errore specifico (e.g
dbstop if error myFun.m:barErrorId
)
- In ogni avviso (
dbstop if warning
) o avviso specifico è riscontrabile
- Se
NaN
o Inf
(dbstop if naninf
)
Vedere la documentazione per dbstop
per i dettagli e buoni esempi.
anche abituarsi a dbcont
(o F5), dbstep
(o F10), dbquit
(Shift + F5), dbstep
(anche dbstep in
, dbstep out
), dbstack
(per vedere dove siete e come siete arrivati). Le scorciatoie da tastiera potrebbero essere diverse da Windows.
Molto meno utilizzati, ma ancora molto utili sono dbup
e dbdown
, che consentono di modificare il contesto dell'area di lavoro (stack di memoria).
Vedere il riepilogo delle funzioni e un elenco di esempi e procedure su MathWorks page on Debugging.
correlati alle "db
" funzioni è checkcode
, che controllerà il codice per possibili problemi prima ancora di eseguirlo. Questo è un buon sostituto per le sottolineature rosse che si otterrebbero nell'editor MATLAB.
Una volta che si ottiene un blocco di dbstop
ed è la sintassi, non sarà spesso necessario inserire un codice keyboard
nel codice, ma è sempre un'opzione.
Nota a margine: 'MATLAB -nodesktop -nojvm' è ancora più veloce! – Vish
-nojvm non mi consente di tracciare grafici. – Anoop
ah vedo. Sì, ha i suoi limiti. Ottimo per eseguire codice veloce e sporco. – Vish