How do I get GDB to break out of a loop?
I can tell GDB to return from a function immediately with return
, and call a function with call myFunction
.
But how do I get it break out of the current loop? i.e. to act as if it's hit a break;
statement.
I开发者_如何转开发s jump myfile.c:<linenumber>
the way to do this?
You can use until
to make the loop end.
You should give it at the end of the loop.
This is useful if you do not need to step in to iterate a loop.
jump
looks like what you want. See Continuing at a Different Address
I do this:
1. do a source listing.
2. Set a breakpoint at the next line where loop ends.
3. Continue
One of the ways could be to set the condition of the loop to false. But this would mean that you would have to wait for the current iteration to finish.
So to summarize the steps would be:
1. Set a breakpoint at the last line of the loop
2. Continue
3. When breakpoint hits, set the loop condition variable to false.
It won't work as direct break statement though.
精彩评论