Breakpoints in code. Something equivalent to the Stop command in interpreted Basic.

34 views (last 30 days)
I'm wanting to put permanent breakpoints in code. Something equivalent to the Stop command in interpreted Basic. As with the Editor's breakpoints, I want the cursor to be at the interruption point. And I want to continue with F5. Any ideas?

Accepted Answer

Steven Lord
Steven Lord on 6 Mar 2017
Use the keyboard function.
  3 Comments
Steven Lord
Steven Lord on 6 Mar 2017
If you have the Editor/Debugger preference "Automatically open files when MATLAB reaches a breakpoint" enabled (in the "General Preferences for the Editor/Debugger" section of this documentation page) it will automatically open the file in which the keyboard command is called to the line where it is called.
John
John on 7 Mar 2017
Steven, Thanks for your response. Yes, "Automatically open files when MATLAB reaches a breakpoint" is turned on. Perhaps it wasn't before. I installed ML 2016b this afternoon, and perhaps that default (?) is different than what I had before. I am seeing the curser at the 'keyboard' statement, and perhaps wasn't before. So using 'keyboard' is perhaps the best I can do in ML.
Thanks, also, to Walter.

Sign in to comment.

More Answers (1)

Walter Roberson
Walter Roberson on 6 Mar 2017
Edited: KSSV on 10 Feb 2021
  8 Comments
Ivan Nascimento
Ivan Nascimento on 8 Jul 2021
Edited: Ivan Nascimento on 8 Jul 2021
Walter's STOP worked perfectly for me but only once I changed str2num to num2str, since dbstop receives a string as argument and ST(2).line is double. It works even when it is called before a comment or blank line (it stops in the next executable line, if it exists). Thank you, Walter!
EDIT. From dbstop help: To resume execution, use dbcont or dbstep. To exit from the debugger, use dbquit.

Sign in to comment.

Categories

Find more on Startup and Shutdown in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!