objective-c - Objective C - [NSArray count] 上的 EXC_BAD_ACCESS 但看不到如何

标签 objective-c crash nsarray exc-bad-access

我正在编写一段代码,它获取一个 URL 并解析标签 Assets 之间的数据内容。在这种情况下,它正在寻找 和 之间的代码。当返回的 URL 正文不包含这些标记时,cullXML: 方法会返回一个空数组,如下所示:

return [NSArray arrayWithObjects: nil];

我检查以确保返回的数组具有以下对象:
        if ( matchesXML.count ) {

在我的调试代码中,我检查了两次。第一次,它工作正常。第二次,就在几行之后,它崩溃了。我不明白为什么。这些线条在我看来是一样的。

我错过了什么?

下面包含更大的代码块。谢谢!
   if (self.newResults) {
        NSString *urlResult;
        NSArray *matchesXML;
        NSArray *match;
        NSDictionary *currentResult;
        NSMutableDictionary *results = [[NSMutableDictionary alloc] init];
        NSArray *returnedObjects;
        NSArray *dictionaryKeys;
        NSMutableArray *currentResultObjects;

        int i = 0;

        // determine tournament type, because the fields are different per type
        NSString *tournamentType;
        tournamentType = [[AFMethods tournamentTypeFromId:self.inputTournamentId] objectAtIndex:0];

        urlResult = [NSString stringWithFormat:@"%@", responseHandle];
        [responseHandle release];

        NSLog(@"urlResult retrieved: %@", urlResult);
        matchesXML = [AFMethods cullXML: urlResult forTag: @"matches"];

        NSLog(@"matches loaded: %@", matchesXML);
        NSLog(@"matchesXML.count %i", matchesXML.count);
        if ( matchesXML.count ) {
            NSLog(@"not nil");
        } 
        NSLog(@"just before tested");
        if ( matchesXML.count ) {
            NSLog(@"tested");

最佳答案

我发现了问题!

它并没有在我想的地方崩溃。几行之后。我正在释放一个自动释放的对象。它一定是以前的代码组织的剩余行。

我删除了版本,它再次完美运行。

关于objective-c - Objective C - [NSArray count] 上的 EXC_BAD_ACCESS 但看不到如何,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9170520/

相关文章:

objective-c - 在 iPad 上以编程方式添加 subview ,硬编码

ios - iPhone UI 元素——自定义还是默认?

ios - 如何在 objective-c 中交换字符串而没有任何空格?

asp.net - iFrame 中的大表格会导致 IE8 崩溃

ios - 将 NSArray 保存到 NSUserDefaults 不起作用

ios - 如何从iOS内部返回方法对象

Ruby "chunk"的 Objective-C 实现

objective-c - 从 UISplitViewController 呈现的 modalViewController 出现错误的方向

java - 在 Android 上获取位置时如何解决应用程序崩溃错误?

vb.net - VB 2008程序崩溃,出现System.ObjectDisposedException