我有这个方法,应该采用可变数目的String参数并将它们放在NSMutableArray中:
- (id)testArray: (NSString*) question, ... {
NSMutableArray* questionsArray = [[NSMutableArray alloc] initWithObjects:question, nil];
id eachObject;
[_questionsArray addObject:question];
va_list list;
va_list (list, question);
while ((eachObject = va_arg(args, id)) != nil) {
[_questionsArray addObject:eachObject];
}
va_end(args);
}
但是我遇到了这个错误:
线程1:EXC_BAD_ACCESS(代码= EXC_I386_GPFLT)
非常感谢您。
答案 0 :(得分:3)
您的代码未按编写的方式运行,但是最有可能导致错误访问错误的原因是,调用函数时您没有终止参数列表。
即
[self testArray:@"abc123", @"def456", nil];
https://www.cocoawithlove.com/2009/05/variable-argument-lists-in-cocoa.html