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. PaperReading20200226

    CanChen ggchen@mail.ustc.edu.cn   To share or not share Motivation: With the publiaction of NAS101, ...

  2. Java得到一个整数的绝对值,不使用任何判断和比较语句,包括API.

    /** * Java得到一个整数的绝对值,不使用任何判断和比较语句,包括API. <br> * 1.不得使用任何API,如Math.abs()等.<br> * 2.不得使用判断 ...

  3. 七 联系人与客户多对一配置&联系人列表&分页查询联系人

    联系人管理: 联系人实体类: package com.mycrm.domain; /** * 联系人的实体 * @author jt *CREATE TABLE `cst_linkman` ( `lk ...

  4. 七:日期类Date、日期格式化SimpleDateFormat、日历Calendar

    日期的格式转换:

  5. Vue 实现分页效果

    分页,是在业务中经常要用到,为了节省用户流量和提升用户体验 讲一下思路: 首先是定义页号currentPage 和 页大小pagesize,用一个数组保存总数据: 用一个计算属性page_arrs,作 ...

  6. Vue中 onmouseenter,onmouseleave,onmouseover,onmouseout的区别

    今天在学Vue视频的时候,提到了这四个触发事件,我就想做下笔记: 1.onmouseenter和onmouseleave是一组:当鼠标进入指定区域的时候触发,但是不支持冒泡,进入或者离开子组件都不触发 ...

  7. python-python基础6(面向对象)

    一.面向对象编程 编程范式 编程是 程序 员 用特定的语法+数据结构+算法组成的代码来告诉计算机如何执行任务的过程 , 一个程序是程序员为了得到一个任务结果而编写的一组指令的集合,正所谓条条大路通罗马 ...

  8. python-python基础4

    本章内容: 装饰器 生成器 迭代器 json & pickle 模块 软件目录结构规范 一.装饰器 装饰器 在不改动函数代码的基础上无限制扩展函数功能的一种机制,本质上讲,装饰器是一个返回函数 ...

  9. vim的几种模式&快捷键

    vim的几种模式&快捷键 2017年01月01日 14:05:24 阅读数:3060 一.vim的模式 基本上vim可以分为三种模式:命令模式,插入模式和底行模式,其实vim有多种模式,我们只 ...

  10. pta 拯救007(Floyd)

    7-9 拯救007(25 分) 在老电影“007之生死关头”(Live and Let Die)中有一个情节,007被毒贩抓到一个鳄鱼池中心的小岛上,他用了一种极为大胆的方法逃脱 —— 直接踩着池子里 ...