LINUX下GDB调试

(gdb) p result[2]=33
$5 = 33
(gdb) p printf("result[2]=%d\n", result[2])
result[2]=33
$6 = 13

调用gdb编译需要在cc后面加 -g参数再加-o;

[root@redhat home]#gdb 调试文件:启动gdb

(gdb) l :(字母l)从第一行开始列出源码

(gdb) break n :在第n行处设置断点

(gdb) break func:在函数func()的入口处设置断点

(gdb) info break: 查看断点信息

(gdb) r:运行程序

(gdb) n:单步执行

(gdb) c:继续运行

(gdb) p 变量 :打印变量的值

(gdb) bt:查看函数堆栈

(gdb) finish:退出函数

(gdb) shell 命令行:执行shell命令行

(gdb) set args 参数:指定运行时的参数

(gdb) show args:查看设置好的参数

(gdb) show paths:查看程序运行路径;

set environment varname [=value] 设置环境变量。如:set env USER=hchen;

show environment [varname] 查看环境变量;

(gdb) cd 相当于shell的cd;

(gdb)pwd :显示当前所在目录

(gdb)info program: 来查看程序的是否在运行,进程号,被暂停的原因。

(gdb)clear 行号n:清除第n行的断点

(gdb)delete 断点号n:删除第n个断点

(gdb)disable 断点号n:暂停第n个断点

(gdb)enable 断点号n:开启第n个断点

(gdb)step:单步调试如果有函数调用,则进入函数;与命令n不同,n是不进入调用的函数的

LINUX下GDB调试相关推荐

  1. linux下gdb调试方法和技巧详解

    linux下gdb调试方法和技巧整理 简介 UNIX或者UNIX-like下调试工具 启动gdb # 1. 在可执行程序不需要输入参数时,我们可以使用 gdb + 可执行程序 gdb ./typeid ...

  2. gdb 调试_一文入门Linux下gdb调试(二)

    点击"蓝字"关注我吧 作者:良知犹存 转载授权以及围观:欢迎添加微信号:Conscience_Remains 总述     今天我们介绍一下core dump文件,Core dum ...

  3. linux gdb网络调试,一文入门Linux下gdb调试(二)

    本文转载自[微信公众号:羽林君,ID:Conscience_Remains] 总述 今天我们介绍一下core dump文件,Core dump叫做核心转储,它是进程运行时在突然崩溃的那一刻的一个内存快 ...

  4. Linux下gdb调试用法

    稍微小小介绍一下 gdb是GUN组织开发的Linux下的调试利器.一般用于调试C/C++程序. GDB主要有以下4个功能: 1.启动你的程序,可以按照你的自定义的要求随心所欲的运行程序. 2.可让被调 ...

  5. linux下gdb调试方法与技巧整理

    目录 一.gdb简介 二.gdb使用流程 1.启动gdb 2.查看源码 3.运行程序 4.设置断点 5.单步执行 6.查看变量 7.退出gdb 三.gdb基本使用命令 1.运行命令 2.设置断点 3. ...

  6. Linux下 gdb调试打印数组元素说明

    一. 打印数组元素 下面以下面代码为例,在 gdb 调试中进行打印操作,说明一下.代码如下: #include <stdio.h>int main(void) {int n = 0;int ...

  7. linux常用调试,linux下gdb常用的调试命令

    用gdb调试程序时,常常很困惑一些命令的使用,要么是不知道这个命令,要么忘了命令的使用方法.接下来是小编为大家收集的linux下gdb常用的调试命令,希望能帮到大家. linux下gdb常用的调试命令 ...

  8. linux下调试thread 类_linux下GDB调试

    linux下GDB是一个非常强大的调试工具,但是他不像vs一样具有强大的图形界面,基本都靠命令来进行调试,对于新手来说也算是个坎.下面就跟大家一起探究一下gdb这个强大的调试工具. 1.开启core ...

  9. linux单步调试方法,linux下gdb单步调试(中).doc

    linux下gdb单步调试(中) linux下gdb单步调试(中) linux下gdb单步调试(中) 一.设置断点( BreakPoint ) 我们用 break 命令来设置断点.正面有几点设置断点的 ...

最新文章

  1. mybatis + oracle insert clob,出现ORA-01461:仅能绑定要插入LONG列的LONG值
  2. python多边形裁剪
  3. python访问数据库日志文件_python利用inotify实现把nginx日志实时写入数据库
  4. iBATIS.NET 学习笔记(五)
  5. 初探swift语言的学习笔记七(swift 的关健词)
  6. java文件与流_Java文件和流深入
  7. 一个小小的知识点,关于强制类型转换
  8. JAVA程序设计----IO流基础(上)
  9. java restcontroller_Spring框架:@RestController与@Controller
  10. 高一计算机word的试题,高一年级信息技术期末考试复习题
  11. PyQt5系列(四)Mac10.12上安装Cocoapods
  12. c# combobox 绑定枚举方式
  13. Java中流的使用和说明(二)
  14. 学汽车故障计算机排除怎么样,汽车故障清除后就没事了么?
  15. word2010怎样显示分节符?
  16. vue:移动端使用ckplayer
  17. 前端数据处理——行政区域编码
  18. 参加2022年全国设备监测诊断与维护学术会议感想
  19. 一文搞懂 php 中的 DI 依赖注入
  20. 服务器hba卡安装系统,hba原理,raid卡,hba卡。

热门文章

  1. 用canvas实现钟表功能
  2. Mesmi-Talk专访|MixLab无界社区创始人 Shadow
  3. Baumer相机使用CameraExplorer软件采集VCXG-51M相机图像时,发现图像显示界面无任何图像现象。
  4. centos7磁盘扩容(虚拟机Mac m1)
  5. vue 引用网络css_Vue 引入第三方js.css的方式
  6. 交行上市将引招行股价下行 65亿招行转债谁买单
  7. Android自定义软键盘输入法,隐藏系统输入法显示光标的实现
  8. android studio虚拟机如何使用,3.1、Android Studio在虚拟机中运行应用
  9. python调用C语言动态链接库详解
  10. linux 按日期复制文件夹,linux根据文件时间复制