在Xcode的断点上使用Say命令

我正在使用 Xcode,并希望从我的代码中设置一个说明NSString的断点.我正在做的是设置断点,然后进行编辑.我添加了一个“Shell命令”操作.第一个论点是说,第二个论据是我有麻烦的地方.
NSString *myString = @"This is a test";

如果我把@ myString @作为第二个参数,它会读出内存地址.恩. 0x0b4be130

如果我尝试@ [myString UTF8String],它给我另一个内存地址.

如果我引用myString,@ * [myString UTF8String] @,它只会给出字符串的第一个字符.

我该如何正确地做到这一点?

解决方法

LLDB实际上有一个内置的Python解释器,整个LLDB库暴露给它.您可以使用script debugger命令访问此命令.这样,我们可以更容易地在框架中获取变量的字符串表示形式,并将其发送到OS say命令.添加调试器操作:
script os.system("say " + lldb.frame.GetValueForVariablePath("myVariable").description)

实现你想要的您甚至可以将Python脚本包装为新的LLDB“命令”,因此您可以创建一个调试器命令,称为明确说明底层对象描述;看看http://lldb.llvm.org/python-reference.html有关设置这些类型的脚本的介绍.

以上是来客网为你收集整理的在Xcode的断点上使用Say命令全部内容,希望文章能够帮你解决在Xcode的断点上使用Say命令所遇到的程序开发问题。

如果觉得来客网网站内容还不错,欢迎将来客网网站推荐给程序员好友。