Если NSLog
не распознается, это не проблема для Xcode 3 по сравнению с Xcode 4. Ваш код не включает в себя самый основной код времени выполнения Objective C.Я бы предположил, что он компилируется как C, а не Objective-C.
Вы говорите, что вам пришлось добавить каркас Foundation - это указывает на то, что вы не начали свой проект с использованием шаблона на основе Objective-C.Когда вы выбираете Новый проект ... , какой шаблон вы выбрали?Любой из шаблонов приложений iOS должен работать, и большинство шаблонов приложений Mac OS X должны работать.Если вы решили создать инструмент командной строки, вы должны выбрать Foundation в качестве типа.
Edit: Кроме того, я должен добавить, что синтаксис для пулов авто-выпуска имеетизменено в последней версии Xcode, так как ARC используется по умолчанию.Вы можете либо отключить ARC, либо прочитать его, чтобы увидеть, в чем различия.Скорее всего, вам будет проще с ARC, так как вам не нужно беспокоиться об управлении памятью, но вам придется помнить об этом, если вы читаете книгу, которая ее не учитывает.