Objective-c的新手,Hello World

时间:2011-11-10 03:14:17

标签: objective-c xcode4.2

我刚开始学习Objective-C编程。我正在使用iMac在Mac OS X版本10.7.2上的Xcode 4.2中进行开发。我正在阅读Stephen Kochan撰写的“Objective-C编程”一书,其中包含一个简单的“Hello World”示例:

#import <Foundation/Foundation.h>

int main (int argc, const char * argv[])
{
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    NSLog (@"Hello, World!");
    [pool drain];
    return 0;
}

编译时会出现很多错误:

  

/Developer/SDKs/MacOSX10.7.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:313:19:错误:未知类型名称'NSString'[1]

还有很多这样的事情。在第一次编译之前是否需要做些什么? Xcode中的一些设置?

3 个答案:

答案 0 :(得分:6)

Unknown typename NSString表示您将目标c代码传递给(普通)c编译器

答案 1 :(得分:1)

从您的代码中,您似乎选择了错误的应用程序项目。好像你选择了与c程序有关的东西

我建议你点击文件 - &gt;新项目并选择Cocoa Application开始。

然后您复制代码并将其放在appdelegate文件中的'didFinishLaunchingWithOptions'方法中

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    NSLog (@"Hello, World!");
    [pool drain];
    return YES;

}

构建并运行该程序。您应该能够在控制台日志中看到Hello World ..

答案 2 :(得分:0)

我也有这个问题。我发现在选择“命令行”之后,我在编写项目名称的窗口中选择了“核心基础”而不是“基础”。这就是导致我错误的原因。小心!