OC基础知识

来源:互联网 发布:win10办公软件下载 编辑:程序博客网 时间:2024/06/05 16:08



一.OC简介

1.OC是在C语言的基础上,增加了一层最小的面向对象语法。

2.OC是完全兼容C语言的,所以可以在OC代码中混入C语言代码,甚至是C++代码。

3.OC可以开发Mac OS X(PC端)平台和Ios(移动端)平台的应用程序


二.OC语法

1.OC大多数关键字是以@开头。

2.OC字符串是在C语言字符串前面加上@,OC字符串是以@开头的。

3.OC的基本数据类型基本和C语言的基本数据类型一致,多了一个BOOL(YES/NO)型数据类型;OC里面的nil相当于C语言中得NULL,既就是空是0;基本语句(循环语句和条件语言)也是一致的;注释的写法(//和/*...*/)也一致;OC语言的输出语句和C语言的输出语句不一样,Printf变成NSLog,并且双引号前面必须加上@。


三.OC开发流程

和C语言开发流程一样,都需要经过 编写代码->编译源文件->链接目标文件和OC函数库->最后执行可执行文件。但还是有区别的,源文件扩展名.c变成.m。所以.m才是oc程序文件。用终端编译,链接,运行和C语言基本一样。但是要注意编译的是.m的文件,链接的时候要再后面空格后加上-framework Foundation。


四.NSLog和printf的区别

1.NSLog接收的是OC字符串作为函数参数(NSLog(返回值是void)和printf(返回值是int)都是带参数的函数),printf接收的是C语言字符串作为参数。

2.NSLog输出后会自动换行,printf输出不会自动换行,所有printf后面经常加上\n。

3.NSLog需要#import <Foundation/Foundation.h>,就是NSLog这个函数的声明在这个框架里。

printf需要#include <stdio.h>,printf的函数声明在这个头文件中。


五.#import和include

1.#import和#include一样都是用来拷贝右边文件的内容

2.不像include为了防止文件内容被重复拷贝多次,需要在头文件加上预处理指令:

#ifdef _文件名大写_H_    

#define _文件名大写_H_

#endif

#import可以自动防止内容被拷贝多次,就不用加入预处理指令。


六.Foundation框架的作用

1.开发OC,IOS,Mac程序必备的框架

2.框架中包含很多常用的API接口

3.框架中包含很多头文件,若想要使用整个框架的内容,包含它的主头文件就可以了,所以我们一般都这样写

#import <Foundation/Foundation.h>


七.BOOL的使用

1.BOOL(typedef signed char BOOL)类型的本质是有符号的字符。

2.根据:

#define YES (BOOL)1

#define NO (BOOL)0

YES就是int型的1,NO就是int型的0。

3.当输出BOOL型时候是把它当做int型输出(就是用%d)。


八.其它

1.Foundation框架头文件的路径:

Finder-->-->应用程序-->Xcode.app -->显示包内容

Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/Foundation.framework

2.主头文件

 1>主头文件:最主要的头文件,名字一般跟框架名称一样,包含了框架中的所有其他头文件

 2> Foundation框架的主头文件名称就是Foundation.h

 3>只需要包含Foundation框架主头文件,就可以使用整个框架的东西

3.运行过程

 1>编写OC源文件:.m

 2>编译:cc -c xxx.m

 3>链接:cc xxx.o -framework Foundation(只有用到了Foundation框架才需要加上-framework Foundation)

 4>运行:./a.out


0 0
原创粉丝点击