一、OC简介

Oc语言在c语言的基础上,增加了一层最小的面向对象语法,完全兼容C语言,在OC代码中,可以混用c,甚至是c++代码。

可以使用OC开发mac osx平台和ios平台的应用程序。

拓展名:c语言-.c  OC语言.-m  兼容C++.-mm

注:其实c语言和oc甚至任何一门语言都只是我们为了实现一些功能,达到一些效果而采用的工具,抛开语法的差别外,我想最重要的应该是在解决问题的时候考虑的角度和方法不一样而已,然而这也构成了学习一门语言的重要性。

二、语法预览

(一)关键字

基本上所有的关键字都是以@开头的(为了与c语言的关键字区分开来),如@interface  @implementation  @public等,少部分没有以@开头,如id,_cmd等

(二)字符串以@开头

C语言字符串:“hello”

OC语言字符串:@“hello”

(三)其他语法

基本类型:5种,增加了布尔类型

Nil相当于是null,也就是0。

屏幕输出:NSLog(@“hello”);//自动换行

NSLog(@“age is %d”,2);

三、OC程序开发过程

#import预处理指令有两个作用:(1)与#include一样,拷贝文件内容(2)可以自动防止文件的内容被重复拷贝

程序编译连接过程:

源文件(.m)---(编译)---->目标文件(.0)-----(链接)---->可执行文件(.out)

Foundation框架。如果要使用框架中的所有头文件那么应该怎么办?包含框架的主头文件。主头文件是一个框架中最主要的头文件,每个框架的主头文件名和框架名一致。

如#import<foundation/foundation.h>

运行过程如下:

(1)编写OC源文件  .m .c

(2)编译文件  cc -c xx.m  xxx.c

(3)链接  cc xx.o xxx.o  -framework Foundation

(4)运行 ./a.out

四、类型补充

Int main()

{

BOOL b=YES;

BOOL b1=NO;

BOOL b2=1;//  YES

BOOL b3=2;//  NO

NSLog(@“%i”,b);

}

BOOL类型与其他类型的用法一致,BOOL类型的本质是char类型的,定义如下:

Typedef signed char BOOL

宏定义:

#define YES  (BOOL)1

#define NO   (BOOL)0

布尔类型的输出一般当做整数来用。

IOS之OC语言简介相关推荐

  1. Objective-c:OC语言简介、类与对象

    Objective-c 简介 1.1980年代初,Brad Cox发明了Objective-C: 2.1985年乔布斯成立了NeXT公司,创建了NextSTEP,使用Objective-C开发的用户界 ...

  2. 黑马训练营--IOS学习---OC语言学习总结2

    OC复习总结: 这个文件是在学习完C语言的基本用法后,回顾C语言的一些语法和易错,不易理解的一下内容,可能会存在内容不连续的情况. 本文内容,有参考自 M了个J的博客 和 lizze_yun的博客 根 ...

  3. iOS开发教程之OC语言-欧阳坚-专题视频课程

    iOS开发教程之OC语言-34296人已学习 课程介绍         Objective-C是扩充C的面向对象编程语言,iOS开发是用的Objective-C语言,本专题更系统的讲解Objectiv ...

  4. OC-oc语言简介,类和对象

    目录: Objective-C简介 面向对象编程与面向过程编程 NSObject简介 类与对象 实例变量 初始化方法 变量赋值 Objective-C简介 1980年代初,Brad Cox发明了Obj ...

  5. OC语言1-前期准备

    一.OC简介 Oc语言在c语言的基础上,增加了一层最小的面向对象语法,完全兼容C语言,在OC代码中,可以混用c,甚至是c++代码. 可以使用OC开发mac osx平台和ios平台的应用程序. 拓展名: ...

  6. 24、OC语言的动态性学习(Runtime)

    文章目录 一.动态类型 二.动态绑定 三.动态加载 四.消息机制的基本原理 消息查找阶段 动态方法解析 消息转发 消息快转发 消息慢转发 消息发送以及转发机制的总结 重写respondsToSelec ...

  7. 系列:iOS开发-C语言基础

    #系列:iOS开发-C语言基础 之前也说了iOS中的OC是扩充C的面向对象编程语言 那么无论是从什么角度来说都要首先回顾一下C的内容,虽然很多人在大学的时候都有学习过C语言,一提到谭浩强,我估计90% ...

  8. ios c语言头文件,iOS开发 -- C语言基础12(预处理指令)

    iOS开发 -- C语言基础12(预处理指令) 宏定义 预处理指令简介 1.C语言在对源程序进行编译之前,会先对一些特殊的预处理指令作解释(比如之前使用的#include文件包含指令),产生一个新的源 ...

  9. Android与Swift iOS开发:语言与框架对比

    Swift是现在Apple主推的语言,2014年新推出的语言,比 Scala等"新"语言还要年轻10岁.2015年秋已经开源.目前在linux上可用,最近已经支持Android N ...

  10. OC语言Block和协议

    OC语言Block和协议 分类: OC基础2014-10-07 09:24 162人阅读 评论(0) 收藏 举报 OC Block OC协议 OC语言BLOCK和协议 一.BOLCK (一)简介  B ...

最新文章

  1. BZOJ 2004 [Hnoi2010]Bus 公交线路
  2. AQA 2011年度最佳博客
  3. C#实现文本文件合并
  4. gpio驱动广播Android,[RK3288][Android6.0] 调试笔记 --- 通用GPIO驱动控制LED【转】
  5. java类初始化顺序
  6. 深度学习笔记:手写一个单隐层的神经网络
  7. 取MapString,sitemap中的全部key
  8. 4个值得注意的点(先记后写)
  9. Linux 命令(94)—— env 命令
  10. 昨天我上午下单买的电池,已经到了长沙
  11. 90后黄金程序员,你不是码农,请自信
  12. win10如何删除微软拼音输入法
  13. 类人猿易语言云控系统开发 + 附加安卓模拟器中控+ 内存操控 系列课程
  14. 如何白嫖一个免费的泛域名SSL证书
  15. 国务院办公厅关于2017年 部分节假日安排的通知 (zz)
  16. string+DFS leetcode-17.电话号码下的字母组合
  17. 对象不支持“attachEvent”属性或方法
  18. DS-112时间继电器
  19. 苹果试玩换个新id行不_关于更换苹果ID的事
  20. 服务器文件夹重定向,文件夹重定向

热门文章

  1. SIFT算法流程介绍
  2. 漏洞编号 cve can bugtraq cncve cnvd cnnvd 简介
  3. Apizza 使用方法
  4. ASCLL码表完整版
  5. 推荐项目| 微信小程序富文本解析组件-wxParse
  6. Matlab lowess拟合,matlab拟合出曲面后,还需要对应的公式
  7. firedrake求解NS方程
  8. 有限差分法解NS方程原理
  9. 云桌面选不对,再好的产品也白用
  10. 客快物流大数据项目(二):物流项目详细介绍