您的位置:首页 > 移动开发 > Objective-C

Object_c基础——oc程序与C语言程序开发过程的异同简单认识

2015-05-17 13:04 567 查看

1、 OC程序的开发过程

与C语言类似:

先把.m源文件编译成.o目标文件,然后再把编译好的.o目标文件经过链接形成.out可执行文件。

终端指令

1> 编译cc –cmain.m

2> 链接cc main.o –framework Foundation 引用Foundation 框架,没有使用Foundation框架的话,就不用-framework Foundation

3> 运行./a.out

2、 NSLog与printf的区别

1>NSLog接收OC字符串作为参数,printf接收C语言字符串作为参数

2>NSLog输出后会自动换行,printf输出后不会自动换行

3>使用NSLog需要#import
<Foundation/Foundation.h>

4>使用printf需要#include<stdio.h>

2、 #import的作用与printf的区别

1>跟#include一样,用来拷贝某个文件的内容

2>可以自动防止文件内容被拷贝多次,也就意味着头文件中不用加入下面的预处理指令了

#ifndef _STDIO_H_
#define _STDIO_H_

#endif

即如果已经定义了 _STDIO_H_文件就不需要再拷贝了

3、 Foundation框架的作用

1> 开发OC、iOS、Mac程序必备的框架

2> 此框架中包含了很多常用的API(应用编程接口)

3>框架中包含了很多头文件,若想使用整个框架的内容,包含它的主头文件即可

#import <Foundation/Foundation.h>

4、 BOOL的使用

1>BOOL类型的本质

typedef
signed char
BOOL;

2>BOOL类型的变量有2种取值:YES、NO

本质定义如下:

#define YES (BOOL)1
#define NO (BOOL)0

3>BOOL的输出(当做整数来用)

NSLog(@"%d%d", YES, NO);

5、多文件开发(与C语言一样)

5.1 多个.m文件的开发

1>编写三个文件

main.m
#import "one.h"
int main()
{
test();
return 0;
}


one.h
void test();


one.m
#import <Foundation/Foundation.h>
void test()
{
NSLog(@"调用了test函数");
}


2>
终端指令

2.1>编译:cc –c main.m one.m

2.2>链接:cc main.o

one

.o –framework Foundation
2.3>运行:./a.out

5.2 .m文件和.C文件的混合开发

1>编写三个文件

main.m
#import "one.h"
int main()
{
test();
return0;
}


one.h
void test();


one.c
#include<stdio.h>
void test()
{
printf("调用了test函数\n");
}


2>
终端指令

2.1>编译:cc –c main.m one.c

2.2>链接:cc main.o one.o

2.3>运行:./a.out
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: