Development Environment | ![]() ![]() |
M-ファイルをライン毎に実行
デバッグモードでは、M-ファイルをライン単位で実行し、変数値を調べたい位置で停止することができます。
これは、エディタ/デバッガのデバッグ(Debug)メニューの中のステップボタン、または、ステップアイテムを使用するか、等価な機能をもつ関数を使用します。
ツールバーボタン |
デバッグメニューアイテム |
詳細 |
等価な関数 |
Continue |
M-ファイルの最後、または、他のブレークポイントに出会うかのいずれかになるまで、M-ファイルの実行を続けます。ファイルがまだ実行されていない場合、メニューアイテムは、Continue ではなく、Run、または、Save and Run が表示されます。 |
|
|
なし |
Go Until Cursor |
カーソルが位置するラインまで、M-ファイルの実行を続けます。コンテキストメニューからも選択できます。 |
なし |
Step |
M-ファイルのカレントラインを実行します。 |
|
|
Step In |
M-ファイルのカレントラインを実行し、実行したラインで他の関数が呼び出されていれば、その関数に割り込みます。 |
|
|
Step Out |
割り込みをした後、呼び出した関数、または、サブ関数の残りの部分を実行し、その関数の実行から抜けて、実行を停止します。 |
|
割り込みを行なう 例題では、collatzplot
は、ライン10
で実行を停止します。このとき、割り込みボタン、または、コマンドウィンドウで dbstep in
とタイプすると、ライン10
で呼び出されるファイルcollatz
に割り込みを行い、M-ファイル相互で移動しながら実行することが可能となります。この操作では、ファイルcollatz
のライン9
に割り込みを行います。
この時、collatzplot
が、ライン10
で、実行停止状態にあることを示す印が、矢印に変化し、MATLABの制御が、メインプログラムではなく、メインプログラムから呼び出された関数(例題では、
collatz
)に移っていることを表示します。
呼び出された関数においても、ユーザは、メイン関数同様の操作(ブレークポイントの設定、実行、ライン単位での実行、変数値の調査)を実行することができます。
割り込み状態から抜ける 例題では、collatz
のステップ9
でプログラムの実行は停止します。問題の解は、n = 1
については正しいので、n = 2
になるまで変数の値を調べる必要がないので、プログラムの実行を継続します。collatz
の実行を最も速く終了する方法は、割り込んだ関数の実行から抜ける操作を行うことです。この操作により、collatz
の残りのラインを実行し、元のプログラムであるcollatzplot
のライン11
に復帰します。割り込んだ関数を抜けるには、ステップアウトボタンを使用するか、コマンドウィンドウで、dbstep out
とタイプしてください。
![]() | M-ファイルの実行 | 変数の値のチェック | ![]() |