gdb 常用选项

  • help:查看命令帮助,具体命令查询在gdb中输入help + 命令,简写h

  • run:重新开始运行文件(run-text:加载文本文件,run-bin:加载二进制文件),简写r

  • start:单步执行,运行程序,停在第一执行语句

  • list:查看原代码(list-n,从第n行开始查看代码。list+ 函数名:查看具体函数),简写l

  • set:设置变量的值

  • next:单步调试(逐过程,函数直接执行),简写n

  • step:单步调试(逐语句:跳入自定义函数内部执行),简写s

  • backtrace:查看函数的调用的栈帧和层级关系,简写bt

  • frame:切换函数的栈帧,简写f

  • info:查看函数内部局部变量的数值,简写i

  • finish:结束当前函数,返回到函数调用点

  • continue:继续运行,简写c

  • print:打印值及地址,简写p

  • quit:退出gdb,简写q

  • break+num:在第num行设置断点,简写b

  • info breakpoints:查看当前设置的所有断点

  • delete breakpoints num:删除第num个断点,简写d

  • display:追踪查看具体变量值

  • undisplay:取消追踪观察变量

  • watch:被设置观察点的变量发生修改时,打印显示

  • i watch:显示观察点

  • enable breakpoints:启用断点

  • disable breakpoints:禁用断点

  • x:查看内存x/20xw 显示20个单元,16进制,4字节每单元

  • run argv[1] argv[2]:调试时命令行传参

  • set follow-fork-mode child#Makefile项目管理:选择跟踪父子进程(fork())

  • core文件:先用$ ulimit -c 1024 开启core,当程序出错会自动生成core文件。调试时 gdb a.out core

  • layout:用于分割窗口,可以一边查看代码,一边测试

    layout src:显示源代码窗口
    layout asm:显示汇编窗口
    layout regs:显示源代码/汇编和寄存器窗口
    layout split:显示源代码和汇编窗口
    layout next:显示下一个layout
    layout prev:显示上一个layout
    Ctrl + L:刷新窗口
    Ctrl + x,再按1:单窗口模式,显示一个窗口
    Ctrl + x,再按2:双窗口模式,显示两个窗口
    Ctrl + x,再按a:回到传统模式,即退出layout,回到执行layout之前的调试窗口。

gdb 常用选项的更多相关文章

  1. GCC编译命令常用选项

    GCC是GUN Compiler Collection的简称,除编译程序外,还包含其他相关工具.GCC可将高级语言编写的源代码构建成计算机直接执行的二进制代码.GCC是Linux平台下最常用的编译程序 ...

  2. GDB常用命令使用说明(一)

    本文由霸气的菠萝原创,转载请注明出处:http://www.cnblogs.com/xsln/p/gdb_instructions1.html 全部关于gdb的文章索引请点这里 GDB(GNU Deb ...

  3. C 调试 gdb常用命令

    gdb常用命令: [root@redhat home]#gdb 调试文件:启动gdb (gdb) l :(字母l)从第一行开始列出源码 (gdb) break n :在第n行处设置断点 (gdb) b ...

  4. gcc编译器常用选项的含义

    -w: 关闭编译时的警告, 也就是编译后不显示任何warning,因此有时编译中会出现一些诸如数据转换之类的可忽略警告, -Wall: 显示编译后所有警告 -W: 显示警告,但是只是显示编译器认为的会 ...

  5. GDB常用调试命令(一)

    GDB是UNIX及UNIX-like下的调试工具,通常gdb使用前置条件:编译时加入debug信息,这里指的是C++. gcc/g++调试选项   gcc/g++是在编译时加入-g,-g分4个等级: ...

  6. zip命令的常用选项

    zip命令的常用选项 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 大家都知道,在linux上一切皆文件,在实际生产环境中,如果我们需要部署一些系统的服务,我们会将一些软件包提前下 ...

  7. FPGA综合工具--Synplify Pro的常用选项及命令

    最近要用到Synplify,但以前没使用过,无基础,找到一篇帖子,隧保存下来. 本文转自:http://blog.sina.com.cn/s/blog_65fe490d0100v8ax.html Sy ...

  8. curl常用选项详解

    curl常用选项详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 又是下班的时间了,让我们一起来学习一下今天的Linux命令吧~我一半只把自己常用的参数列出来,其他的有但是我们几 ...

  9. Linux GDB常用命令一栏

    Linux GDB 常用命令如下: 1.启动和退出gdb (1)启动:gdb ***:显示一段版权说明: (*** 表示可执行程序名) (2)退出:quit.有的时候输入quit后会出现相关提示:类似 ...

随机推荐

  1. VMwara虚拟机三种网络模式

    虚拟机:虚拟机是能够让用户在一台物理机上模拟出多个操作系统的软件其本质是通过中间层实现计算机资源的管理和再分配让系统资源的利用率最大化VMware即是一款虚拟机软件注意:虚拟机和操作系统的区别,虚拟机 ...

  2. Glove - sh demo.sh出错 Error: suffix or operands invalid for `vbroadcastss'

    Glove+Python,使用预训练模型,执行sh demo.sh 报错:Error: suffix or operands invalid for `vbroadcastss' 解决:修改Makef ...

  3. 全文索引-ElasticSearch

    ElasticSearch 官方文档 Elasticsearch是一个开源的搜索引擎,建立在一个全文搜索引擎库Apache Lucene™基础之上. Lucene可以说是当下最先进,高性能,全功能的搜 ...

  4. 「牛客CSP-S2019赛前集训营1」仓鼠的石子游戏

    传送门 NowCoder 解题思路 考虑这样一件事:在任何的同一个石圈,后手肯定会输. 证明很简单,手玩一下就可以大致意会. 但是有一种特殊情况,就是大小为1的圈,这种圈就是起到一次交换先后手的作用, ...

  5. PHP登陆页面完整代码

      /* 包括的文件 */ /* login.php */ <?phprequire('./mysql.php');$username=$_REQUEST['username'];$passwd ...

  6. leetcode814 Binary Tree Pruning

    """ We are given the head node root of a binary tree, where additionally every node's ...

  7. NMEA-0183

    GPGSA( 当前卫星信息)    例:$GPGSA,A,3,01,20,19,13,,,,,,,,,40.4,24.4,32.2*0A    字段0:$GPGSA,语句ID,表明该语句为GPS DO ...

  8. Oracle 修改 提交后 回退

    1. -- 查询你执行update 语句之前的数据 精确到什么时间 select * from 表名 as of timestamp to_timestamp('2017-07-21 17:16:38 ...

  9. SP2-0157: unable to CONNECT to ORACLE after 3 attempts, exiting SQL*Plus

    [oracle@jtwy02 ~]$ sqlplus '/as sysdba' SQL*Plus: Release 11.2.0.4.0 Production on Sat Oct 13 14:14: ...

  10. 微信小程序-发送模板消息

    1 添加一个小程序的消息模板,获取到模板id,存储到数据库中,方便以后修改调用 2. https://developers.weixin.qq.com/miniprogram/dev/api-back ...