You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在gdb中如何打印对象的实际值而非内存地址

GDB打印指针对象实际值的操作方法

你目前打印的inputInfo是指针类型,GDB默认打印指针时只会输出其存储的内存地址,要查看指向的SObjectRecInput对象的实际内容,按以下操作即可:

  • 直接解引用指针打印全部内容:执行命令 print *inputInfo,GDB会根据类型定义输出对象所有成员的取值
  • 如果想要更易读的格式化输出,可以先执行 set print pretty on,再执行 print *inputInfo,输出会自动按成员分行、嵌套结构自动缩进,可读性更强
  • 如果只需要查看单个成员的取值,不需要完全解引用,直接执行 print inputInfo->[成员名] 即可,比如要查成员height就执行 print inputInfo->height

如果执行以上操作后GDB依然无法识别类型、无法打印成员,要确认你编译目标程序时是否添加了-g编译参数,没有携带调试符号的情况下GDB无法解析结构体的成员定义,无法打印完整对象内容。

内容的提问来源于stack exchange,提问作者marlon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 20:06:04