我正在针对在内部使用appendFormat:
的nsmutablestring编写一个类别。
@interface NSMutableString (Additions)
- (void)appendFormatWithLine:(NSString *)format, ...;
@end
@implementation NSMutableString (Additions)
- (void)appendFormatWithLine:(NSString *)format, ... {
va_list args;
va_start(args, format);
// **calling [self appendFormat] gives a 'EXC_BAD_ACCESS'**
[self appendFormat:format, args];
[self appendString:@"\r\n"];
va_end(args);
}
@end
我不知道如何使用虚拟机列表或虚拟机开始呼叫
NSMutableString:appendFormat
。怎么能做到? 最佳答案
是的。-appendFormat:
采用可变参数,而不是可变参数列表(va_list
)。
NSString *formatted = [[NSString alloc] initWithFormat: format arguments: args];
if (formatted) {
[self appendString: formatted];
[formatted release];
}