OC基本语法

来源:互联网 发布:书法词典软件下载 编辑:程序博客网 时间:2024/05/16 12:21

一。Oc语法预览:

1.关键字:绝大部分以@开头,部分不是:

selfsuperid_cmd__block__strong__weak

2.字符串以@开头:@"hello"是OC中的字符串

3.其他:

---基本数据类型:char,int,float,double,BOOL(YES/NO)

---nil相当于NULL 也就是0

---输出函数:NSLog(@"Hello");  NSLog(@"age is %i",27);

二。开发过程:

.m原文件----编译--->.o目标文件----链接---->a.out可执行文件

链接:把项目中所有相关联的.o目标文件跟c语言函数库合并在一起,生成一个可执行文件

三。第一个oc程序:

通过终端:

>cd Desktop/>cd (存放项目的目录文件夹)>touch firstoc.m>open firstoc.m   ///默认通过xcode打开#include <stdio.h>int main(){-----printf("这是第一个oc程序");-----return 0;}>cc -c firstoc.m   //编译,生成.o文件>cc firstoc.o   //链接,生成a.out文件>./a.out     //执行程序


四。第二个oc程序:

/*import 用途,预处理指令1.跟#include一样,拷贝文件的内容2.可以自动防止文件的内容被重复拷贝*///NSobjCRuntime.h中有NSLog函数的声明3.Foundation框架头文件的路径:点击Xcode.app-->显示内容:Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Develop/SDKs/iPhoneOS6.0sdk/System/Library/Frameworks/Foundation.framwork4.每一个框架都有一个主头文件:主头文件名和框架名一摸一样,其包含了框架的所有头文件,所以只要写主头文件就行了5.运行>编写OC源文件:.m  .c>编译:cc -c xxx.m   xxx.c>链接: cc xxx.o   xxx.o -framework Foundation( 只有包含Foundation框架主头文件,就可以使用整个框架的东西) 也可以直接cc.m   cc.c  合并编译和链接//#import <Foundation/NSobjCRuntime.h>#import<Foundation/Foundation.h>int main(){-----NSLog(@"第二个oc程序");-----return 0;}

终端输入:>cc -c twooc.m//编译生成.o文件>cc twooc.o -framework Foundation//需要引入oc框架>./a.out//执行

最核心的框架:UIKit.framework
最强大的动画框架:QuartzCore.framework
每一个框架都有一个主头文件:都和框架名一摸一样

四。第三个oc程序:one.m调用two.m中的方法

two.h;void test();one.m:#import "two.h"   //内部的文件用双引号int main(){    test();    return 0;}two.m:#import <Foundation/Foundation.h>void test(){    NSLog(@"调用了test函数“);}
此时如果单独链接one.o或者two.o就会报错
既然one中包含two中要用的函数,那就办这两个o文件合并在一起链接

>cc one.o two.o -framework Foundation>ls -la.out>./a.out
五。第四个oc程序:
c语言程序和oc程序可以相互调用

two.h:void test();one.m:#import "two.h"int main(){    test();    return 0;}two.c:#include<stdio.h>void test(){    printf("调用了test函数\n");}

六。BOOL:

本质是  typedef signed char BOOL;

#define YES (BOOL)1

#define NO (BOOL)0

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

0 0