我来自Delphi和.Net背景,刚开始进行iPhone开发。我在调试时遇到了一个问题。
我有以下代码:
if ([displayText rangeOfString:@"."].location != NSNotFound) .....etc
我想在我调试时对此进行评估,但无法解决如何做到这一点。我找到了表达式窗口并输入了下面但没有发生任何事情:
[displayText rangeOfString:@"."].location
因为我习惯了Delphi& .Net(我知道XCode是一个不同的产品)它很容易将变量,方法等粘贴到监视窗口然后看到结果但我看不到如何在XCode中执行此操作。请问你能告诉我如何在调试时评估事情吗?
由于
答案 0 :(得分:2)
您可以通过进入顶部主菜单中的调试下拉列表并选择监视变量来观察变量。您也可以右键单击,然后您应该看到“监视变量”选项。或者,您可以将鼠标悬停在所需变量上,同时单步执行代码以查看其当时的值
答案 1 :(得分:2)
在你的情况下,你要做的是在调试器上键入:
p (NSRange)[displayText rangeOfString:@"."]
您可以使用po打印出对象的值,但是像C结构这样的东西必须用“p”打印出来,并且必须将返回类型从ObjC调用强制转换为正确的结构类型。
此外,只需将其放入“表达式”窗口即可生成值:
(NSRange)[displayText rangeOfString:@"."]
在这两种情况下,您都会看到整个NSRange结构,包括位置和长度。