我试图在Xcode中观察一个变量。 我按照这里的说明,在断点处暂停,选择运行>变量视图>...但除了“启用数据格式化程序”之外,其他选项都是灰色的。 有什么想法吗?
我使用的是Xcode版本3.1.3。
我试图在Xcode中观察一个变量。 我按照这里的说明,在断点处暂停,选择运行>变量视图>...但除了“启用数据格式化程序”之外,其他选项都是灰色的。 有什么想法吗?
我使用的是Xcode版本3.1.3。
很遗憾,我也没能成功使用“运行”菜单创建监视点。需要注意的一点是,当变量超出作用域时,监视点可能会变得无效。
如果你愿意深入一些,可以使用一些低级别的gdb
命令来设置一个监视点,以便监视内存本身的地址。例如,在你链接到的指南中,他们展示了如何监视变量path
,其指针值为0xbfffeb70
。要手动设置该地址的监视点,请在调试器控制台(打印调试输出信息的位置)中点击“(gdb)”提示符后,输入类似以下内容的命令:
watch *((int*)0xbfffeb70)
这个晦涩的语法是必要的,因为gdb期望输入的是C表达式。想要了解更多细节,请访问此链接并跳转到标题为“Using hardware watchpoints”的部分。(我在Intel机器上进行测试,不确定PowerPC如何处理。)使用这种方式设置监视点时,Xcode将在监视点被触发时弹出下拉菜单,并告知您该值是如何被改变的,gdb将在控制台中打印相同的信息。
watch -location mTextFormatted
。它揭示了一个与静态转换和动态转换相关的严重错误 ;) - Ivan Vučicawatchpoint set expression -- 0xbfffeb70
或简写为w s e -- 0xbfffeb70
。 - Miguel Guerreiro