【发布时间】:2015-09-25 20:54:17
【问题描述】:
我在 xCode 中收到此错误消息:
-[__NSCFString substringWithRange:]: Range {18446744073709551615, 1} out of bounds; string length 71. This will become an exception for apps linked after 10.10 and iOS 8. Warning shown once per app execution.
我试图在我的代码中找到发生这种情况的位置。
我的项目中有大约十几个 substringWithRange 方法。我在它们周围放了 try catch 块:
@try {
substring = [s substringWithRange:NSMakeRange(i, j - i)];
}
@catch (NSException* e) {
NSLog(@"Except: %@", e);
}
没有任何 catch 块正在执行。
我尝试将我的部署目标设置为 8.4。
任何帮助将非常感谢!
【问题讨论】:
-
你不需要 try/catch。使用调试器查看应用崩溃的位置。
-
它不会崩溃它会停止......
-
“它停止”是什么意思?您的意思是调试器停止在导致问题的行上?
-
调试器不会在任何地方停止,尽管我将断点设置为在异常时停止。它几乎就像陷入了无限循环。我得到错误然后什么也没有发生
标签: objective-c exception substring nsrange