如何在CLion中逐步调试C/C++项目的汇编代码?含自有源码场景
在CLion中调试C/C++源文件的汇编代码
下面介绍两种直接调试自己源码对应汇编代码的实用方法:
方法一:调试时切换到汇编视图逐步执行
- 正常启动调试(快捷键
Shift+F9),在目标源码行设置断点,待程序停在断点处 - 打开Debug工具窗口的Disassembly标签页(若找不到,可通过
View > Tool Windows > Debug调出Debug窗口后切换标签) - 此时会显示当前源码对应的汇编指令,使用调试工具栏的
Step Into(F7)或Force Step Into(Alt+Shift+F7)即可逐行执行汇编代码,执行时汇编视图的指针会同步移动,还能配合Registers、Memory标签页查看寄存器和内存变化
方法二:直接针对汇编代码设置断点调试
- 在源码中选中目标函数或代码段,右键选择
Debug '函数名'启动调试,随后在Disassembly视图中点击汇编行左侧的 gutter 区域,即可给汇编指令设置断点 - 也可通过
Run > View Breakpoints打开断点管理窗口,添加Assembly Breakpoint,指定指令地址或内容来精准调试
注意事项
- 编译项目时建议关闭优化(比如CMake中使用
-O0编译选项),否则优化后的汇编代码会和源码的对应关系变得模糊,不利于调试 - 若需要查看更详细的汇编信息,可在编译选项中添加
-g3,提升调试符号的详细程度
内容的提问来源于stack exchange,提问作者Bostonian
相关产品推荐
相关产品推荐

