GDB调试-数组查看技巧

GDB是在Linux上开发的必备调试工具,也是一个强大的调试工具,在查看数组的值时,可以查看数组中的多个值。

如:我定义的一个数组变量如下

char **monophoneStrs

如果用GDB查看,如下:

(gdb) p *monoLookup->monophoneStrs
$8 = 0x627ec0 "aa"
(gdb) 

这样就只显示数组的第一个值,如果我需要输出多个值,怎么办? 这当然难不到GDB。

(gdb) p *monoLookup->monophoneStrs@5
$9 = {0x627ec0 "aa", 0x628200 "ae", 0x628220 "ah", 0x628240 "ao", 
  0x628260 "aw"}
(gdb) 
就是这样的格式:

gdb  *array@length  // 这个length是你想查看的长度
GDB调试简易教程 在你调试程序时,当程序被停住时,你可以使用print命令(简写命令为p),或是同义命令inspect来查看当前程序的运行数据。print命令的格式是: print print / 是表达式,是你所调试的程序的语言的表达式(GDB可以调试多种编程语言),是输出的格式,比如,如果要把表达式按16进制的格式输出,那么就是/x。一、表达式print和许多GDB的命令一样,可以接受一个表达式,GDB会根 阅读详情

相关推荐

GDB调试技巧实战--查看汇编指令兼谈栈数组初始化

GDB技巧-查看汇编指令及兼谈栈数组初始化

深山老宅的虚拟空间 856

GDB常用命令笔记

GDB常用命令笔记,希望能给到您帮助~~ 编译时要加上-g选项表示debug模式 使用GDB调式: gdb main 运行: run | r : 运行程序,当遇到断点的时候,程序会在断点处停止运行,等待用户输入下一步的命令。 start :运行,从第一条语句开始 continue | c:继续执行,直到下一个断点处(或运行结束)。 step | s :执行下一句,如果下一执行语句为函数,进入函数 next | n | 换行 :执行下一句,不进入函数 fini

进击的code儿 2621

GDB调试技巧汇总

gdb tips/tricks, 实用GDB技巧

深山老宅的虚拟空间 4136

gdb 笔记(06)— 查看当前函数参数、查看结构体/类的值、查看数组的值

1. 查看当前函数参数 当程序在函数中暂停后,即可查看函数的参数。语法如下: info agrs 或者 i args 使用示例 (gdb) b fun_test Breakpoint 1 at 0x969: file demo.cpp, line 6. (gdb) r Starting program: /home/wohu/cppProject/book_debug/chapter_3.1/demo ret is 8 Breakpoint 1, fun_test (a=10, str=0x5555

wohu1104的专栏 1万+

gdb查看数组地址和内容

gdb中,可以使用print或x命令来查看数组的地址以及数组中元素的内容

Never Give Up 970

GDB之显示数组

本文将介绍如何使用GDB来显示数组的信息。

jinhui_wen的专栏 5636

vscode gdb调试查看数组的部分内容

vscode查看数组的部分内容

qq_62240380的博客 1251

GDB调试命令,包括查看变量,查看内存

在你调试程序时,当程序被停住时,你可以使用print命令(简写命令为p),或是同义命令inspect来查看当前程序的运行数据。print命令的格式是: print print / 是表达式,是你所调试的程序的语言的表达式(GDB可以调试多种编程语言),是输出的格式,比如,如果要把表达式按16进制的格式输出,那么就是/x。 一、表达式 print和许多GDB的命令一样,可以接受一个表达

tianmo2010的专栏 4057

gdb设置

gdb参数设置 https://blog.csdn.net/qibaoyuan/article/details/6116265

sanra123的博客 363

gdb调试参数

参考 这里 1)gdb 打印字符串的全部内容 set print element 0 2)用x命令查看内存(examine的缩写) (gdb) x/1ub 0x7ffff7fbf7a00x7ffff7fbf7a0: 196 从地址0x7ffff7fbf7a0开始, 读取 1 个单字节,以16进制形式读取 1可换成任意整数 u可以替换成: d 按十进制格式显示变量x 按十六进制格式显...

weixin_30781631的博客 218

gdb调试命令总结

gdb调试中,对于动态创建的数组,比如 int * x;  这个时候不能像静态数组那样通过p x 就可以打印出整个数组。如果想要打印出整个数组,可以通过创建一个人工数组来解决这个问题。其一般形式为:     *pointer@number_of_elements gdb还允许

caianye的专栏 7771

gdb+linux+查看变量,gdb查看变量值

转贴地址gdb调试过程中如何查看变量的值?一般说来使用print(p)指令来实现,并有自己很多的输出格式。print和它的显示格式p /x var #十六进制显示变量。p /d var #十进制显示变量。p /u var #十六进制显示无符号变量。p /o var #八进制格式显示变量。p /t var #二进制格式显示变量。p /a var #十六进制格式显示变量。p /c var ...

weixin_39876650的博客 3375

GDB调试程序(五)

  查看运行时数据———————        在你调试程序时,当程序被停住时,你可以使用print命令(简写命令为p),或是同义命令inspect来查看当前程序的运行数据。print命令的格式是:        print <expr>   ...

woshixuexizhe10的博客 916

Clion查看数组指针对应数组的全部元素

在Clion中使用GDB进行debug,当使用new方式产生一个数组并赋值给指针时,在debug中只能看到这个数组的第一个元素值,也即这个指针对应地址的值。 可以通过在evaluate中进行一个强制转换获得实际的完整数组内容 (MyType[size])*MyTypeArray 参考内容: stackoverflow ...

m0_37407587的博客 2005

gdb调试经验

1.如何查看子函数 b 函数名 2. 如何查看指针申请的数组 p *array@len len由自己ding 3. 如何带参数的调试 gdb ./main 然后 r /projdata3/info_fil/yqxu/opinion_mining/code_yqxu_stc_laram/data/settings_20ng.txt 7 1 4 1 0.5 0.5 0.1 4.0 0.

xyqzki的专栏 800

GDB 笔记

基本知识: 1:如果用GDB调试的话编译的时候加上-g 选项 不然调试的时候list不出 源代码。 2:break 设置断点 3:程序run之前的设置     1: 设置好参数 ste args     2: 路径,环境变量    path     3: 工作目录, 输入输出  cd x进入, pwd  查看, 4: clear 清除断点/ 5:enable·[break][poi

feifeiwendao的专栏 401

GDB查看变量

GDB查看变量 分类: linux应用2009-07-27 14:36 3537人阅读 评论(0) 收藏 举报 tree编译器语言forms优化object 在你调试程序时,当程序被停住时,你可以使用print命令(简写命令为p),或是同义命令inspect来查看当前程序的运行数据。print命令的格式是: print print / 是表达式,是你所调试的程序

jfkidear的专栏 1916
上一篇: N-Gram的数据结构
下一篇: 一些支持向量机(SVM)的开源代码库的链接及其简介
iteye_4185
博客等级 码龄8年 98粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值