lldb Xcode:错误:'printf'不是一个有效的命令

我正在使用Xcode 4.3.3,我想设置符号端点。 我为所有的objc_msgSend符号创build了一个符号断点,我想把它和“Debugger output”结合起来。

我在SO里跟着这个post的提示。 但是在我的debugging器中的消息

错误:'printf'不是一个有效的命令。

出现。 任何线索? 我想为每个函数调用一个消息[Class method]在debugging器区域打印。 喜欢这个

[UIApplication sharedApplication] [UIApplication _isClassic] [NSCFString getCString:maxLength:encoding:] [UIApplication class] [SLSMoleculeAppDelegate isSubclassOfClass:] [SLSMoleculeAppDelegate initialize] 

如果在断点设置中将“expr – ”前缀添加到debugging器命令中,它将与lldb一起使用:

 expr -- (void)printf("[%s, %s]\n",(char *) object_getClassName(*(long*)($esp+4)), (char *) *(long *)($esp+8) ) 

但是,解决scheme并不完美,因为debugging器在每次输出后都会打印“无结果”

 [OS_xpc_dictionary, _xref_dispose] <no result> [NSObject, initialize] <no result> [OS_object, initialize] <no result> 

我没有find任何可以压制“无结果”的输出,也可能是不可能的,请看这个开放式雷达 。