一般来说,你会发现一些事情不应该是这样的,然后逆向分析,直到你明白原因为止。
最明显也是最有用的:在函数或行号上设置断点并逐行遍历代码。
另一个方便的技巧是为所有结构/对象提供显示函数,即使它们从未在程序中使用过,因为您可以从 gdb 中运行这些函数:
gdb> p show_my_struct(struct)
My custom display of Foo:
...
Run Code Online (Sandbox Code Playgroud)
观察点也非常方便,但可能会大大减慢您的程序。当变量或地址的值发生变化时,它们会中断流程:
gdb> watch foo
Watchpoint4: foo
gdb>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5195 次 |
最近记录: |