--------------------------------------------IOS期待与您交流!--------------------------------------------
一、HelloWorld(Objective-C)
#import <Foundation/Foundation.h> int main() { NSLog(@"Hello World"); return 0; }
二、分析HelloWorld
1、#import的作用
* 跟#include一样,拷贝文件的内容
* 可以自动防止文件的内容被重复拷贝
2、#import <Foundation/Foundation.h>的作用
我们先看了解一下主头文件:
* 主头文件:最主要的头文件,名字一般跟框架名称一样,包含了一个框架中的所有其他头文件
* Foundation框架的主头文件名称就是Foundation.h,其他框架类似
* 只需要包含Foundation框架主头文件,就可以使用整个框架的东西
由于NSLog函数的声明被包含在Foundation框架的NSObjCRuntime.h文件中,而主头文件Foundation.h又包含了NSObjCRuntime.h文件,所以<Foundation/Foundation.h>是为了包含进NSLog函数的声明。
为了减少#import代码的数量,推荐使用主头文件,即<Foundation/Foundation.h>,当然,这里也可以使用<Foundation/NSObjCRuntime.h>
3、Foundation框架头文件的路径
* 右击Xcode.app --> 显示包内容
* Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk/System/Library/Frameworks/Foundation.framework
4、NSLog
用来打印输出的函数,类似于C语言中得printf函数,不同的是,NSLog会自动换行,至于@"Hello World",请看下文...
5、运行过程
* 编写OC源文件:.m、.c
* 编译:cc -c xxx.m xxx.c
* 链接:cc xxx.o xxx.o -framework Foundation
(只有用到了Foundation框架才需要加上-framework Foundation)
* 运行:./a.out
三、关于@
Objective-C是完全兼容C语言的,为了区别于C语言的字符串和关键字,Objective-C在字符串和大部分关键字前加上@,比如@“Hello World” 在C语言中就是“Hello World”,而关键字如下
@interface、@implementation、@end @public、@protected、@private、@selector @try、@catch、@throw、@finally @protocol、@optional、@required、@class @property、@synthesize、@dynamic self、super、id、_cmd、__block、__strong、__weak、
--------------------------------------------IOS期待与您交流!--------------------------------------------
详细请查看:http://edu.csdn.net