首页 > 代码库 > 黑马程序员——简单的OC程序
黑马程序员——简单的OC程序
1.#import的用途:
1> 跟#include一样,拷贝文件的内容
2> 可以自动防止文件的内容被重复拷贝
2.#import <Foundation/NSObjCRuntime.h>
NSObjCRuntime.h中有NSLog函数的声明
3.Foundation框架头文件的路径
1> 右击Xcode.app --> 显示包内容
2> Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk/System/Library/Frameworks/Foundation.framework
4.主头文件
1> 主头文件:最主要的头文件,名字一般跟框架名称一样,包含了框架中的所有其他头文件
2> Foundation框架的主头文件名称就是Foundation.h
3> 只需要包含Foundation框架主头文件,就可以使用整个框架的东西
5.运行过程
1> 编写OC源文件:.m、.c
2> 编译:cc -c xxx.m xxx.c
3> 链接:cc xxx.o xxx.o -framework Foundation
(只有用到了Foundation框架才需要加上-framework Foundation)
4> 运行:./a.out
@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、
比如@"Hello"是OC中的字符串,而"Hello"则是C语言中的字符串
与C语言类似:
跟C语言一样,OC程序的入口依然是main函数,只不过写到一个.m文件中。比如这里写到一个main.m文件中(文件名可以是中文)
1 #include <stdio.h>2 3 // OC程序的入口:main函数4 int main()5 {6 printf("第1个OC程序\n");7 return 0;8 }
来点跟C语言不一样的,使用NSLog函数输出内容
1 #import <Foundation/Foundation.h>2 3 int main()4 {5 // NSLog输出内容会自动换行6 NSLog(@"第2个OC程序!!!");7 8 return 0;9 }
#ifndef ?_STDIO_H_
#define?_STDIO_H_
#endif
#import <Foundation/Foundation.h>
typedef signed char BOOL;
#define YES (BOOL)1
#define NO (BOOL)0
NSLog(@"%d %d", YES, NO);
1 #import <Foundation/Foundation.h> 2 3 4 BOOL test(BOOL mybool) 5 { 6 return NO; 7 } 8 9 int main()10 {11 BOOL b = YES;12 13 BOOL b2 = NO;14 15 BOOL b3 = 1; // YES16 17 BOOL b4 = 0; // NO18 19 20 //NSLog(@"%i", b);21 22 NSLog(@"%d", test(YES));23 return 0;24 }
跟C语言中多个.c文件的开发是一样的
#import "one.h"
int main()
{
test();
return 0;
}
void test();
#import <Foundation/Foundation.h>
void test()
{
NSLog(@"调用了test函数");
}
#import "one.h"
int main()
{
test();
return 0;
}
void test();
#include <stdio.h>
void test()
{
printf("调用了test函数\n");
}
(没有使用Foundation框架的话,就不用-framework Foundation)
黑马程序员——简单的OC程序