这是一个代码:
for (int i = 0; i < _sevenForDisplay.length; i++) {
_sevensForReplace = [_sevensForReplace stringByReplacingCharactersInRange:NSMakeRange([[_sevenForDisplay substringWithRange:NSMakeRange(i,1)] intValue]-1,1) withString"1"];
NSOperation *operation = [[NSInvocationOperation alloc]
initWithTarget:self
selectorselector(blinkPicSeven
object(_forBlink)];
[queue addOperationperation];
}
[userDefaults setObject:_sevensForReplace forKey"sevens"];
在程序的工作过程中执行代码时,最后一行出现错误消息- Thread 1: EXC_BAD_ACCESS (code=1, address=0x7a0090018)。
我一步一步开始调试(我在一个循环的开始,然后按F6),一切正常。
在旧的 OSX 和 Xcode 版本中一切正常,在新版本中不起作用。 (项目站一年楼)
Best Answer-推荐答案 strong>
确保你 [[NSString alloc]init] 你的 _sevensForReplace 在伪造一个值之前。现在看来,尤其是在 XCode 6.+ 上,SDK 选择为 8.2 那些 未 分配(init)的 NSString 似乎会使应用程序崩溃,尽管这种措施并不是真的8.2之前需要
关于ios - 中断线程 1 : EXC_BAD_ACCESS,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/29490633/
|