【工具】-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

相关内容

热门资讯

阶段f辅助!wepoker透视... 阶段f辅助!wepoker透视方法,hhpoker德州有挂吗,解密教程(有挂工具)hhpoker德州...
诀窍f辅助!hhpoker德州... 诀窍f辅助!hhpoker德州作弊,wejoker手机版透视脚本,关于教程(讲解有挂)1、首先打开w...
教材f辅助!werplan怎么... 教材f辅助!werplan怎么透视,悟空黑桃a有挂嘛,解密教程(讲解有挂)1、悟空黑桃a有挂嘛公共底...
诀窍f辅助!如何下载wepok... 诀窍f辅助!如何下载wepoker安装包,hhpoker德州真的假的,分享教程(有挂透视)如何下载w...
总结f辅助!wepoker辅助... 总结f辅助!wepoker辅助器怎么弄,pokernow辅助工具,推荐教程(确实有挂)进入游戏-大厅...
要领f辅助!约局吧游戏挂,xp... 要领f辅助!约局吧游戏挂,xpoker怎么作弊,辅助教程(真实有挂)1、进入到约局吧游戏挂是否有挂之...
总结f辅助!德州私人局脚本,a... 总结f辅助!德州私人局脚本,aapoker破解侠是真的吗,关于教程(有挂解密)1、上手简单,内置详细...
绝活f辅助!wepoker轻量... 绝活f辅助!wepoker轻量版辅助,hhpoker透视工具,解迷教程(有挂猫腻)一、wepoker...
大纲f辅助!拱趴大菠萝挂哪里,... 大纲f辅助!拱趴大菠萝挂哪里,wepoker线上大神,普及教程(有挂存在)1、在拱趴大菠萝挂哪里插件...
技法f辅助!哈糖大菠萝能开挂吗... 技法f辅助!哈糖大菠萝能开挂吗,hhpoker德州机器人,曝光教程(有挂分析)1、上手简单,内置详细...