Синтаксическая проблема Objective C - PullRequest
3 голосов
/ 29 июля 2010

Я пытаюсь что-то очень тривиальное здесь, но программа завершается с «EXC_BAD_ACCESS» в NSLog. Я пытаюсь заполнить изменяемый массив несколькими словарями, подобными этим:

NSMutableArray *_recipientsMutArray = [[NSMutableArray alloc] init];

NSDictionary *r1 = [[NSDictionary alloc] initWithObjectsAndKeys: @"firsValue", @"firstKey", @"secondValue", @"secondKey", nil];

[_recipientsMutArray addObject:r1];

[r1 release];

Почему?

1 Ответ

2 голосов
/ 29 июля 2010

Код, который вы предоставили, в порядке, и не должен вызывать EXC_BAD_ACCESS, однако вы упоминаете об ошибке с NSLog. Распространенная ошибка при использовании NSLog заключается в предоставлении строки формата C для строки формата, а не NSString. Следующее может вызвать ошибки:

int i = 4;
NSLog("%d", i); // oh no!

Вместо этого вам нужно убедиться, что первый аргумент NSLog - это NSString, например:

int i = 4;
NSLog(@"%d", i); // yay!
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...