我在网上尝试了一些建议,但这对我不起作用。我使用的是Visual Studio 2010.基本上我输入了loc(kcs(1,4))(那是我的变量),我获得了157510036.它的十六进制是9636994.那么我输入(INTEGER *)0x9636994但是在“值“列表示”未定义变量INTEGER“。我trid小写整数或真实和相同的答案。有什么建议吗?
答案 0 :(得分:1)
我输入了(INTEGER *)0x9636994,但是在“值”列下的监视窗口中,它显示为“未定义的变量INTEGER”。
根据Restrictions on Native C++ Expressions:
类型转换
如果转换为类型,则调试器必须知道该类型。您必须在程序中拥有该类型的另一个对象。 不支持使用typedef语句创建的类型。
尝试使用基础类型。因此,例如,如果INTEGER
实际上是int
,您会尝试观看(int *)0x9636994
。
这也假设变量固定在0x9636994
(基本上你不是要在堆栈上引用瞬态的东西)。