gdb continue后如何暂停_Linux系统编程入门学习笔记4-GDB

一、什么是GDB

GDB是由GNU软件系统社区提供的调试工具,GDB主要帮助程序员完成下面四个方面的功能。

  1. 启动程序,按照自定义的要求随心所欲地运行程序
  2. 让被调试的程序在所指定的断点住停住
  3. 当程序停住时,可以检查此时程序中的变量内容
  4. debug

二、如何使用GDB进行调试

  1. 在生成可执行文件是选择-g选项生成调试信息,并且保证在使用gdb调试时源文件就在当前目录下。
  2. 通过gdb 可执行文件名字,这一命令来启动gbd进行调试

bed5158cc8c1090aa5961a1ccd626b38.png

三、GDB常用指令

  • 启动和退出

启动:gdb 可执行程序

退出:quit

  • 给程序设置参数/获取设置的参数

set args 参数列表

show args

  • GDB使用帮助

help

  • 查看当前文件代码(默认是main函数所在的文件)

list/l (从默认位置显示)

list/l 行号 (从指定的行居中显示)

list/l 函数名 (从指定的函数居中显示)

  • 查看非当前文件代码

list/l 文件名:行号 (从指定的行居中显示)

list/l 文件名:函数名 (从指定的函数居中显示)

  • 设置/显示一次显示多少行

show list/listsize

set list/listsize 行数

  • 运行GDB程序

start 启动程序,停止在第一行

run 启动程序,遇到第一个断点停下来

  • 继续运行,到下一个断点停止

c/continue

  • 向下执行一行代码(不会进入函数体)

n/next

  • 变量操作

显示变量值 print/p 变量名

显示变量类型 ptype 变量名

  • 向下单步调试(遇到函数进入函数体)

s/step

finish(跳出函数体)

  • 自动变量操作

display 变量名 跟踪显示某个变量

i/info display 显示正在跟踪的变量信息

undisplay 编号 取消对应编号的跟踪显示

  • 其他操作

set var 变量名字=值 改变变量的值

until (直接跳出循环,只有在循环体的一轮语句执行完处该命令才有效)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值