gpt4 book ai didi

c++ - 在 GDB (C++) 中找到指向单例事后分析的指针

转载 作者:IT王子 更新时间:2023-10-29 01:09:34 27 4
gpt4 key购买 nike

我正在对崩溃的程序进行事后分析。我在 Linux(Ubuntu 12.04,x86)上,代码是用 C++ 编写的。该程序正在使用一些可能包含有值(value)信息的单例。如果是这样创建的,是否可以找到指向单例实例的指针:

SingletonType& SingletonType::getInstance(){
static SingletonType* instance = new SingletonType();
return *instance;
}

如果可能的话,它是如何在 GDB 中完成的?

最佳答案

用核心文件运行gdb,然后运行命令

disassemble  SingletonType::getInstance

在我的测试程序中,我发现了一个 mov 0x<addr>, %eax接近方法末尾的指令。 print *(*(SingletonType**) <0xaddr>)应该打印单例结构的内容。

关于c++ - 在 GDB (C++) 中找到指向单例事后分析的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17679688/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com