stringWithFormat在LLDB中不起作用

Ort*_*ntz 16 cocoa objective-c ios lldb

为什么这不起作用?

(lldb) po [NSString stringWithFormat:@"%f", 1.0]
error: too many arguments to method call, expected 1, have 2
error: 1 errors parsing expression
Run Code Online (Sandbox Code Playgroud)

但这样做:

(lldb) p (void)printf("%f", 1.0)
1.000000
Run Code Online (Sandbox Code Playgroud)

LLDB中不支持Objective-C变量参数语法吗?

Ort*_*ntz 22

正如Martin R在评论中指出的那样,它显然是一个LLDB问题,它带有可变参数列表.

另一方面,正如Patrik Schmittat指出的那样,-initWithFormat:效果很好:

(lldb) po [[NSString alloc] initWithFormat:@"%f", 1.0]
1.000000
Run Code Online (Sandbox Code Playgroud)

我为此提交了一个雷达:rdar:// 15261415(stringWithFormat在LLDB中不起作用)