在XCode中,我在某行插入一个断点..
说那行是:
abc = [books valueForKey:@"OfficialName"];
x = [appDelegate.books count];
我的问题是在调试器中,如果我将鼠标悬停在abc上,它将显示值
但是,如果我想看到表达式的运行时值,请说"appDelegate.books count"
它没有显示值。如何获得此表达式的值,就像普通的var?
答案 0 :(得分:5)
您可以使用调试器控制台确定变量值:
print (int) [arr count]
或使用命令po
打印对象的描述
po objectName
答案 1 :(得分:0)
这不是一个变量,而是一条消息。但答案将存储在x中,因此将鼠标悬停在该位置上。
答案 2 :(得分:0)
这有些不正统,但是为了找到你在循环中得到的东西(参见我在其他答案中的hmthur的评论):
for(x = 0; x< [arr count]; x ++)
首先,将循环分布在三条单独的行上,以便您可以一次调试一步:
for (x = 0;
x < [arr count];
x++)
现在在for循环的开头放置一个断点。
降低x&lt; [arr count]已执行,但不是x ++
现在在调试器的监视窗口中,打开寄存器组。
[arr count]返回的结果将出现在$ eax寄存器中。
这是最不正统的,不依赖它来开发生命关键软件! 为了理智,坚持我的原始答案。