VSCode调试C/C++技巧:使用GDB命令
VSCode
中调试C/C++项目的时候,单纯的执行命令、输出变量可能还不够,很多时候我们需要直接执行GDB
的命令,例如检查内存,反汇编等等,此时就需要我们直接执行GDB
命令了。
因此,本文就将介绍如何在VSCode
调试的时候执行GDB
命令
1. VSCode中运行GDB命令:exec
VSCode
其实对GDB
命令做了一些封装,例如我们可以直接在命令行中输入变量名,然后就会打印出变量的值,亦或者直接执行函数,输出返回值
但是如果我们要检查特定的内存区域的话,此时VSCode
封装的命令就不够看了,此时我们需要直接执行GDB
命令
为此,我们在需要执行的GDB
命令前添加-exec
来指示VSCode
将后面的命令视为GDB
命令直接交给GDB
来运行。例如我们现在要查看内存0xc0001500
开始的100个字节的内存数据,那么就可以执行下面的命令
-exec x /100hx 0xc0001500
可以看到,0xc0001500
处是main
函数(严谨的来说,是main
符号)的开始地址,为此,我们反汇编这个地址中的数据。即将其中的数据视为指令来进行翻译
-exec disassmble 0xc0001500
使用GDB
反汇编出来的代码确实和我特地生成的汇编代码是一样的