为什么gdb转换不起作用?

jac*_*hab 39 gdb

print (CEthPacket*) 0xeb609a0用来检查给定地址的对象并得到A syntax error in expression, near ') 0xeb609a0'.

我究竟做错了什么?

编辑:CEthPacket是一个C++类,我在gdb Fedora(6.8-37.el5).

小智 56

我刚刚遇到类似的问题,并且,从我的一位同事那里,我了解到你需要在一个引号中提供类所属的命名空间,如下所示:

(gdb)p('MyScope :: MyClass'*)ptr;

  • 模板怎么样?我怎么告诉gdb这个值是`std :: vector <int>*`? (7认同)

Emp*_*ian 5

你没有说在哪个平台上,哪个版本的 GDB,或者是什么CEthPacket

我的第一个猜测是你应该尝试一下print (struct CEthPacket *) 0xeb609a0