Breakpoints

8 views (last 30 days)
Horia
Horia on 2 Aug 2011
Edited: Walter Roberson on 20 Feb 2018
Is there any method to set breakpoints to all the lines of a .m file, except manually one by one?

Answers (4)

Jan
Jan on 2 Aug 2011
As Sean and Jiang I do not think that this is useful. But if you are sure that you need it:
i = 1;
while 1
try
dbstop(FuncName, sprintf('%d', i));
i = i + 1;
catch
break;
end
end
  2 Comments
math07 rizqi
math07 rizqi on 22 Aug 2011
thanks, this answer really helped me.
Jan
Jan on 22 Aug 2011
Is your problem solved?

Sign in to comment.


Sean de Wolski
Sean de Wolski on 2 Aug 2011
Why not just set one on the first line and step through it?
doc dbstop
doc dbstep
  2 Comments
Horia
Horia on 2 Aug 2011
A tedious solution.
Moreover, it doesn't work inside loops for errors due to something else than the loop itself.
Sean de Wolski
Sean de Wolski on 2 Aug 2011
How does it work any differently than having a break point on that line?

Sign in to comment.


Fangjun Jiang
Fangjun Jiang on 2 Aug 2011
Why do you need that? You can debug by running code line by line (pressing F10).
  2 Comments
Horia
Horia on 2 Aug 2011
A tedious solution.
Moreover, it doesn't work inside loops for errors due to something else than the loop itself.
Image Analyst
Image Analyst on 2 Aug 2011
That doesn't make any sense. Typing F5 or F10 WILL work, even if you're stepping on a line that generates an error. How would an error get generated anyway, if not due to executing a statement in the loop that you are in? Doesn't make sense, unless you had some kind of parallel processing going and THAT process generated the error. Even that doesn't negate the fact that F5 and F10 will still work.

Sign in to comment.


Walter Roberson
Walter Roberson on 2 Aug 2011
Yes, you can construct a script that would do this by issuing "dbstop" calls on your behalf. But like the others I do not see much point in it.
  7 Comments
Jan
Jan on 2 Aug 2011
@Horia: Did my code what you want? If sets a break point in each line of the M-file, whose name is store in the variable FuncName. Does this differ from the requested behaviour, and if so, how?
Walter Roberson
Walter Roberson on 20 Feb 2018
Edited: Walter Roberson on 20 Feb 2018
If you were plotting a variable named values then
values(values<0) = nan;
MATLAB knows to skip plotting points with value nan.

Sign in to comment.

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!