1

我希望能够在调试发布应用程序时看到变量值。我已将编译器选项设置为 Z7 并给出 /DEBUG 和 /PDB: 链接器选项。现在我有一个应用程序的 pdb。

通过这个设置,我可以在代码中放置一个断点(Windbg)并且它可以正确命中。但我看不到变量值。

Locals 窗口仅显示指针值,但我看不到相同的内容。例如,如果我有一个指向内部具有 int 的结构的指针,它只显示指针的值。如果我通过单击树中的 + 来展开它,我会看到变量名称的值为<Memory access error>

我应该如何让发布版本显示变量值?

4

1 回答 1

1

很多时候,你看不到它们,因为它们不存在。如果您查看优化后的汇编代码,您会发现许多中间变量被完全删除以利于性能。这很可能是您所看到的,解决它的唯一方法是按照反汇编并查看正确的内存位置/寄存器。

于 2010-12-20T14:14:47.033 回答