在NSString中附加换行符

Spa*_*nky 7 iphone objective-c nsstring

我有这个:

if (soapResults != nil) {
    soapResults = [soapResults stringByAppendingString:@"\n"];
    }
Run Code Online (Sandbox Code Playgroud)

但我得到一个警告:

在构建时从不同的Objective-C类型分配.

当我在设备上运行时,我得到:

Program received signal: "EXC_BAD_ACCESS".
Run Code Online (Sandbox Code Playgroud)

来自gdb.

任何想法如何在不收到警告或错误的情况下将换行符附加到NSString?

任何帮助赞赏// :)

Bit*_*ink 16

另一种选择是:[NSString stringWithFormat: @"%@\n", soapResults]即使逻辑相同!

但是,即使在stringByAppendingString的情况下,它也会返回一个新字符串,但它不会更改目标,因此您必须将新字符串分配给类NSString的新实例.

  • 除非您确实需要,否则不要使用格式字符串.当你可以使用-stringByAppendingString时解析它们是很昂贵的: (6认同)