在GDB中,如何打印具有特殊字符的符号的内容?

2023-12-24

我在用GDB调试的时候遇到一个小问题。 问题是这样的:

当我想获取“main”的地址时,我可以这样做

gdb-peda$ p main
$1 = {<text variable, no debug info>} 0x400b21 <main>
gdb-peda$ x main
0x400b21 <main>:        0x000000b8e5894855

但是如果我想获取'的地址[电子邮件受保护] /cdn-cgi/l/email-protection', 它成为了

gdb-peda$ x [email protected] /cdn-cgi/l/email-protection
No symbol table is loaded.  Use the "file" command.
gdb-peda$ p p[email protected] /cdn-cgi/l/email-protection
No symbol table is loaded.  Use the "file" command.

And '[电子邮件受保护] /cdn-cgi/l/email-protection'实际上存在。

gdb-peda$ x 0x602020
0x602020 <[email protected] /cdn-cgi/l/email-protection>:        0x00000000004006e6

我想我必须转义“@”和“.”使得信息‘[电子邮件受保护] /cdn-cgi/l/email-protection' 可以成功打印出来,但我不知道该怎么做。谁能帮我?

------ 2020/05/03 已编辑 ------

谢谢@JohnKoch,我试过了x &'[email protected] /cdn-cgi/l/email-protection', 有用。

虽然我不明白为什么它不只打印内容'[email protected] /cdn-cgi/l/email-protection'使用时x '[email protected] /cdn-cgi/l/email-protection',这样我需要添加&......

gdb-peda$ x/4gx '[email protected] /cdn-cgi/l/email-protection'
0x7ffff7a649c0 <_IO_puts>:      0x55fc894954415541      0x072ee808ec834853
0x7ffff7a649d0 <_IO_puts+16>:   0x36be6f2d8b48fffa      0x4800458bc3894800

Add &:

gdb-peda$ x/4gx &'[email protected] /cdn-cgi/l/email-protection'
0x602020 <[email protected] /cdn-cgi/l/email-protection>:        0x00007ffff7a649c0      0x00000000004006f6
0x602030 <prin[email protected] /cdn-cgi/l/email-protection>:      0x0000000000400706      0x0000000000400716

使用单引号,如下所示:

(gdb) p 'my weird symbol'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在GDB中,如何打印具有特殊字符的符号的内容? 的相关文章

  • gdb:“未加载符号表”

    尝试在 gdb 中添加断点时 我不断收到此错误消息 我使用这些命令来编译 gcc g main c utmpib2 c o main o and cc g main c utmpib2 c o main o and also g g mai
  • GDB 函数参数上的条件中断

    我想在函数参数大于某个值时设置断点 下面的虚拟代码 int main void uint64 t num 123456 uint64 t x 847534 uint64 t other num x x num other stuff her
  • GDB错误:“进程记录:当前架构不支持记录功能”

    我正在尝试在 GDB 中进行反向执行 特别是target record按照说明在 gdb 中运行我的程序后here https stackoverflow com questions 1206872 go to previous line
  • Visual Studio Code,调试子进程不起作用

    我有这个确切的问题 https github com Microsoft vscode cpptools issues 511 https github com Microsoft vscode cpptools issues 511 但那
  • gdb 中的 是什么意思?

    gdb n 134 a b c 0xdeadbeef uint32 t length initval gdb n gdb p a 30
  • 为什么 GDB 启动一个新的 shell 以及如何禁用此行为?

    我正在解决一个问题 即从 GDB 启动应用程序会导致符号查找错误 但从 shell 启动它却可以 事实证明 每当你从 GDB 中启动一个程序时 它都会启动一个新的 shell 从而覆盖我在启动 GDB 之前设置的所有环境变量 例如LD LI
  • 如何模拟ARM处理器运行环境并加载Linux内核模块?

    我尝试加载我的vmlinux into gdb并使用 ARM 内核模拟器 但我不明白为什么我会得到Undefined target command sim 这是外壳输出 arm eabi gdb vmlinux GNU gdb GDB 7
  • 在 C++ 代码 gdb 中回溯指针

    我在运行 C 应用程序时遇到段错误 在 gdb 中 它显示我的一个指针位置已损坏 但我在应用程序期间创建了 10 万个这样的对象指针 我怎样才能看到导致崩溃的一个 我可以在 bt 命令中执行任何操作来查看该指针的生命周期吗 谢谢 鲁奇 据我
  • 如何使用GDB修改内存内容?

    我知道我们可以使用几个命令来访问和读取内存 例如 print p x 但是如何更改任何特定位置的内存内容 在 GDB 中调试时 最简单的是设置程序变量 参见GDB 分配 http sourceware org gdb current onl
  • 如何将STL容器数据转储到gdb中?

    我无法在 gdb 中转储 STL 无序映射容器值 变量类型是 std unordered map var 我的 gdb 版本 7 7 1 GDB配置 configure host x86 64 linux gnu target x86 64
  • 使用 math.h 函数时 gdb 给出奇怪的输出[重复]

    这个问题在这里已经有答案了 可能的重复 为什么 gdb 将 sqrt 3 计算为 0 https stackoverflow com questions 5122570 why does gdb evaluate sqrt3 to 0 这里
  • 在 QtCreator 中调试时如何查看 qDebug 消息

    我正在从 Eclipse CDT 带有 Qt 集成插件 过渡到 QtCreator 2 0 但仍有一件事困扰着我 QtCreator 当我在 QtCreator 中调试时 我在Application output tab直到我停止正在调试的
  • 多线程调试器[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 GDB 在使用多线程 pthreads 进行调试时存在严重问题 nix 上还有其他好的 C C 多线程调
  • Ruby 解释器出现段错误后,是否可以从 corefile 中获取 Ruby 回溯?

    Note 我使用了在使用 libxml ruby gem 时遇到的段错误来说明问题 但我已经用所述 gem 解决了我的问题 这个问题真正涉及的是从 gdb 使用 corefile 查看 Ruby 回溯 即解释器在 Ruby 代码无法处理异常
  • 是否可以根据函数要返回的内容在函数末尾设置条件断点?

    我有以下更复杂的版本 unsigned int foo unsigned int bar unsigned int myFunc return foo bar 就我而言 myFunc从很多地方调用 在其中一种情况下 出现了问题 通过进一步调
  • 漂亮的地图打印机会抛出类型错误

    我已经使用配置了漂亮的打印机http wiki eclipse org CDT User FAQ How can I inspect the contents of STL containers 3F http wiki eclipse o
  • 如何配置 qt Creator 以显示 C++ 代码而不是反汇编程序?

    昨天我做了很多事情 比如更新 GCC Clang 和重新安装 Qt Creator 今天 在逐步调试我的代码时 调试器显示的是反汇编代码 而不是我编写的 C 代码 紧迫F10 or F11 调试器正在进入汇编代码而不是 cpp nor h我
  • 使用 -ffile-prefix-map 会中断调试

    在 DAYJOB 我正在尝试实现可重复的构建 以使调试已发布的软件变得更容易 我们的构建服务器上不再有完整的调试版本 使用来自可重现的构建 org https reproducible builds org 使用 ffile prefix
  • 从 gdb 设置 std::string 变量值?

    是否有可能 当调试器在断点处停止时 修改 std string 变量的值 而不需要采取诸如调整当前缓冲区的内存映像之类的黑客手段 例如类似于 set var mystring hello world 试试这个 经过测试并且对我有用 call
  • 使用 GDB 调试 Rust

    我知道调试 Rust这里有关于 Stack Overflow 的问题 我之前也在 Go 中使用过 GDB 然而 我遇到了一个问题 GDB 似乎无法找到调试符号 考虑这个复杂的程序main rs pub fn main println run

随机推荐

  • RSpec 测试 PUT 更新操作

    我正在尝试编写一些 RSpec 测试来测试我的应用程序 但我偶然发现了几个问题 但我找不到任何解决方案 1 我正在尝试测试更新操作 这是我的代码 it email is a new one do put update id user use
  • HttpApplicationState 在 MVC 控制器中不可用

    我正在使用 MVC2 和 VS2010 开发一个网站 需要使用应用程序状态全局值 我可以设置一个像 Application hits 0 这样的值在 Global asax 中 但是当尝试在 MVC 控制器中使用相同的内容时 总是会出现以下
  • 为什么我们*应该*使用EventHandler

    我讨厌事件处理程序 我讨厌我必须投sender如果我想用它做任何事 我讨厌我必须创建一个继承自的新类EventArgs to use EventHandler
  • 零填充 numpy 数组

    在末尾用零填充数组的更Pythonic的方法是什么 def pad A length A np array 1 2 3 4 5 pad A 8 expected 1 2 3 4 5 0 0 0 在我的实际用例中 事实上我想将数组填充到最接近
  • facet_wrap 添加 geom_hline

    我的 ggplot 代码如下 facet wrap 函数在页面上为每个名称绘制 20 个图 并且沿 x 轴有 5 个 Pcode 我想计算每个名称的平均 TE Contr 并将该值绘制为每个图上的水平线 由 Facet wrap 分割 目前
  • Java Swing 按钮颜色[重复]

    这个问题在这里已经有答案了 我正在使用 NET Beans IDE 在 LINUX 中开发我的应用程序 我使用 Syntheta 包来生成新的外观和感觉 到目前为止一切都很好 现在 我的下一阶段是在某些数据库状态发生变化时为按钮添加颜色 例
  • MySQL 中的数字序列

    在Python中 如果我想要一个从0到9 含 的序列 我会使用 xrange 0 10 有什么办法可以在 MySQL 中做到这一点吗 由于不存在 xrange 这样的东西 因此可以使用一个单独的表来存储整数 如前所述 或者只是创建一个存储过
  • 如何将 Instagram feed 嵌入我的网站 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在尝试将客户端的 Instagram feed 集成到网站侧边栏 我的网站堆栈是 Bootstrap Vanilla JS Jqu
  • mysql 外键约束格式不正确错误

    我有两张桌子 table1是带有列的父表ID and table2有一个柱子IDFromTable1 不是真实的名字 当我戴上FK时IDFromTable1 to ID in table1我收到错误Foreign key constrain
  • Neo4j 非托管扩展和 GuardTimeoutException

    我非常需要一些关于我在 Java 中构建的 Neo4j 非托管扩展时遇到的问题的建议 我创建了一个非常简单的代码示例来突出我的问题 基本前提是我想设置 org neo4j server webserver limit executionti
  • 为什么大多数 JavaScript 原生函数都比它们的原始实现慢?

    我注意到了some http jsperf com map native vs implemented tests http jsperf com concat tests blabla原生 JavaScript 函数通常比简单的实现慢得多
  • 观察 SharedPreferences 数据

    我正在尝试观察共享偏好中的数据变化 我找到了这个similar https stackoverflow com questions 50649014 livedata with shared preferences问题回答者 SimplyP
  • 如何将H2Database数据库文件转换为MySQL数据库.sql文件?

    我有一些数据H2数据库 http www h2database com html main html文件 我想将其转换为 MySQL sql数据库文件 我可以遵循哪些方法 根据 Thomas Mueller 的回答 SquirrelSQL
  • Facebook Canvas APP (Iframe) 自动调整高度

    最近遇到了 Facebook canvas iframe 应用程序的问题 我已将设置设置为 自动调整大小 并实现了正确的 FB JS 调用来调整高度大小 以避免出现不需要的滚动条 但它似乎不起作用 还有其他人遇到过这个问题或提出解决方案吗
  • 如何在dart中使用HttpClient发出HTTPS请求?

    我正在使用 dart 中的 HttpClient dart io 包 而不是 dart http 并且我想发送 HTTPS 请求 有没有办法做到这一点 我似乎找不到一种方法可以让我做到这一点 new HttpClient getUrl Ur
  • 如何使用 Firestore 填充参考字段

    您知道如何使用 Firestore 填充文档上的参考字段吗 当您创建 获取文档参考时 您可以将其保存到另一个文档中 此示例适用于 Node SDK 但它应该能让您了解如何在 Android 上实现此示例 创建文档参考 Create the
  • 悬停在重叠的 CSS3 形状上

    好吧 我有一个关于与通过 CSS3 创建的形状进行交互的潜在棘手问题 请参阅以下小提琴 http jsfiddle net MH4LN 1 http jsfiddle net MH4LN 1 代码示例 div class container
  • 是否可以在不调用“node”的情况下运行 Node.js 脚本?

    我喜欢 javascript 所以当我听说时我很兴奋Node js http nodejs org 一个基于 V8 的 Javascript 运行时 我更愿意使用 Javascript 来编写 shell 脚本 我的问题是 如何在不调用的情
  • jquery 选择图像

    我希望允许用户选择预先上传的图像到用户生成的网页 我有一个可用图像的列表 因此我可以使用选择控件轻松地完成此操作 但是 我真的很想允许用户从缩略图弹出窗口中进行选择 而不是文本 然后填充文本带有结果文件名的表单元素 我希望最终结果会像日历弹
  • 在GDB中,如何打印具有特殊字符的符号的内容?

    我在用GDB调试的时候遇到一个小问题 问题是这样的 当我想获取 main 的地址时 我可以这样做 gdb peda p main 1