【工具】-gdb-学习笔记
创始人
2024-11-13 19:11:41
0

准备工作

  • 程序的发布方式有两种,debug模式和release模式

  • Linux gcc/g++出来的二进制程序,默认是release模式

  • 要使用gdb调试,必须在源代码生成二进制程序的时候, 加上 -g 选项,发布成debug模式

如下源代码经过编译:

   #include     int SumAdd(int x)  {      int i=1;      int sum=0;      for(i=1;i<=x;i++)      {          sum+=i;     }     return sum; }  int main() {     printf("%d \n",SumAdd(100));     return 0; }                       

命令:gcc -o test test.c -g
在这里插入图片描述

gdb调试

命令:gdb test

在这里插入图片描述

l或者l函数名查看源代码(默认显示10行)

在这里插入图片描述

r或者run运行程序,没有设置断点,会运行完。

在这里插入图片描述

b或者break行号、地址、函数名设置断点;info b 显示所有断点信息

在这里插入图片描述

n或者next单步执行(enter重复执行上个命令)

这里可以看到寄存器区域(rbp,rsp,rip)、汇编代码、源代码、栈区域。
在这里插入图片描述在这里插入图片描述

stack 数量,查看栈空间

在这里插入图片描述

s或者step,进入函数单步调用

在这里插入图片描述

finish跳出当前函数调用,对于嵌套比较多的系统函数调用非常有用

可以看到是进入了上一个函数,main函数,等待下一步命令
在这里插入图片描述

p+变量名打印变量值

在这里插入图片描述

continue或c:从当前位置开始连续而非单步执行程序

在这里插入图片描述

delete breakpoints:删除所有断点;delete breakpoints n:删除序号为n的断点;disable breakpoints:禁用断点;enable breakpoints:启用断点
display 变量名:跟踪查看一个变量,每次停下来都显示它的值;undisplay:取消对先前设置的那些变量的跟踪
x *n/$rip :查看内存值
set :设置变量
until X(行号):跳至X行
q或quit:退出gdb

相关内容

热门资讯

透视能赢!wepoker辅助软... 透视能赢!wepoker辅助软件价格(透视)购买wepoker模拟器-一贯真的有辅助app(哔哩哔哩...
截至发稿!wepoker轻量版... 截至发稿!wepoker轻量版透视(透视)总是是有辅助安装(有挂规律)-哔哩哔哩1、完成wepoke...
透视普及!wpk插件,wpk插... 透视普及!wpk插件,wpk插件-本来是真的有辅助工具(哔哩哔哩)脚本下载中分为三种模型:挂靠谱的,...
透视软件!wpk辅助软件(透视... 透视软件!wpk辅助软件(透视)辅助开挂(好像有挂)-哔哩哔哩1、任何透视是真的假的的玩家都可以机会...
出乎意料的是!werplan怎... 出乎意料的是!werplan怎么作必弊(透视)真是真的有辅助下载(有挂存在)-哔哩哔哩1)werpl...
透视详细!wepokerplu... 透视详细!wepokerplus外挂,淘宝买wepoker透视有用吗-一贯真的有辅助神器(哔哩哔哩)...
透视规律!佛手在线大菠萝技巧(... 透视规律!佛手在线大菠萝技巧(透视)一贯是真的辅助插件(有挂猫腻)-哔哩哔哩1、佛手在线大菠萝技巧破...
透视普及!wpk俱乐部是做什么... 透视普及!wpk俱乐部是做什么的,wpk插件-本来一直总是有辅助脚本(哔哩哔哩)1、在插件功能辅助器...
透视透视!哈糖大菠萝可以开挂吗... 透视透视!哈糖大菠萝可以开挂吗(透视)总是是有辅助工具(有挂猫腻)-哔哩哔哩1、金币登录送、破产送、...
透视揭露!wepoker免费脚... 透视揭露!wepoker免费脚本咨询,wepoker透视方法-好像存在有辅助神器(哔哩哔哩)1、该软...