replaceObjectAtIndex: i withObject: str дает ошибку неправильного доступа (также с удалением объекта - даже если я могу добавитьObject atIndex - PullRequest
0 голосов
/ 17 февраля 2011

Я пытаюсь заменить строку в массиве (обновить массив) строкой, найденной по индексу массива (другой массив). Оба массива инициализируются в init, и я могу nslog их в этом методе. если [str isEqualToString: [otherArray objectAtIndex: i], я хочу вернуть true / YES

но строка: [updateArray replaceObjectAtIndex: i withObject: str]; дает плохой доступ к программе. (это только консольная программа) «Программа получила сигнал:« EXC_BAD_ACCESS ».

любые предложения приветствуются, спасибо trev

-(BOOL)checker:(NSString *)str {

    NSLog(@"update arrayobject at %d is %@",0, [updateArray objectAtIndex:0]);  


    NSLog(@"otherArray size is %d",[otherArray count]);
    NSLog(@"str iput is %@",str);
    int i;
    for (i=0; i<[otherArray count]; i++) {
        if ([str isEqualToString:[otherArray objectAtIndex:i]]) {
            [updateArray replaceObjectAtIndex:i withObject:str];
        return TRUE;
        }

    }   
        return FALSE;
}

1 Ответ

0 голосов
/ 11 апреля 2011

однажды проверь, массив ли он выделен или нет правильно ... я думаю, что нет ничего, кроме этой вещи ...

...