0

主程序

    int main(int argc, char *argv[])
{
    @autoreleasepool {
        return
        UIApplicationMain
        (argc,
         argv,
         nil,
         NSStringFromClass
         ([AppDelegate class]));
    }
}

调试器说错误在“NSStringFromClass”行。我不知道这是什么意思或是什么,请帮助我!:/

4

4 回答 4

1

如前所述,错误不在您粘贴的代码中。但是,您可以轻松找到包含错误的代码行:
在 XCode 的左列中打开断点导航器。然后点击左下角的加号。在出现的上下文菜单中,选择“添加异常断点”。
如果您现在在启用了 breakpojnts 的情况下运行代码,调试器将在遇到错误的行停止,您可以轻松检查例如您的 rnge 变量。

于 2013-05-27T09:35:08.800 回答
0

通常,当您使用 NSArray 或 NSMutableArray 并且您想要使用超出数组范围的值时,会发生 NSRangeException。我认为你提到的那一行没有问题

于 2013-05-27T05:37:23.390 回答
0

文档在这里

- (NSString *)substringToIndex:(NSUInteger)anIndex

这里一个anIndex值必须在接收器的范围内,或者等于接收器的长度。

于 2013-05-27T05:39:14.040 回答
0

NSRangeException- 这意味着你已经超出了数组的范围。您粘贴的代码没有任何错误。当 xcode 得到任何未捕获的异常时,它会显示 main.m 文件,但这并不意味着错误在该文件或行中。

检查出现此错误的视图的控制器文件。可能您正在尝试访问超出其范围的数组。例如。在 tableView 中,如果您使用任何NSArrayNSMutableArray显示内容并且返回numberOfRowsInSection:的数量超过该数组的总数,那么您将收到此错误。

于 2013-05-27T05:54:30.583 回答