Do I absolutely have to learn assembly language to be able to use the debugger optimally? I noticed that during debugging sessions, I see these cryptic codes and CPU registers... (eax... blah blah). I shall assume that that's assembly and I am supposed to somehow decipher the cause of the problem from it.
Is there some shortcut to understanding the debugger without having to learn assembly language?
PS: I saw an book on assembly that was almost 1000 pages and I don't have the stomach to go through it. Please help.
Edited:****I am using codeBlocks ide. But i guess the question still stands even for MSVC++
Although some asm knowledge might come very handy sometimes during debugging, a more valuable thing to do probably in your case is to get debugging symbols right.
In case of gcc pass it a -g
flag. In case of Visual Studio compiler, enable debugging symbols generation (yes, even for release builds) in project settings. If you're using other compiler read its documentation on the subject.
And last, but not least, if you're on Windows, consider downloading debugging symbols for their binaries, as it might make your life a lot easier. Find those here: microsoft site
Sounds like control has hopped into a library whose source you don't have or that wasn't built with debug info.
Being at least familiar with your machine's architecture and assembly language can help, but it's not strictly necessary to using a debugger well.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With