我在日志文件中看到了一个地址,类似于0x7fc9e401a02a,我知道这个地址是Connection类型的指针。然后我启动了GDB,我想知道如何将这个地址转换为Connection*类型的临时变量,并显示相关的Connection*信息?有什么提示吗?
因为我的Connection类有一个命名空间,所以我应该按以下方式操作:print * ('MyNameSpace::Connection' *) 0x7fc9e401a02a 感谢JaredC和dbrank0的回答。
print *(Connection*)0x7fc9e401a02a
。假设你的地址来自你在gdb中查看的核心文件(core file)。如果该地址来自代码的运行,则必须在gdb中重新运行代码,否则它肯定不存在。请注意,该指令用于调试C/C++代码。 - JaredC