美文网首页
oc和c语言对比

oc和c语言对比

作者: 天天想念 | 来源:发表于2015-12-01 10:30 被阅读124次

1.源文件对比

  • C语言中常见源文件.h头文件,.c文件
文件扩展名 源类型
.h 头文件,用于存放函数声明
.c C语言源文件,用于实现头文件中声明的方法
  • OC中的源文件.h头文件,.m与.mm的实现文件
文件扩展名 源类型
.h 头文件,头文件包含类、方法、属性的声明。
.m/.mm 类的实现文件,参与编译的文件,用来实现类中声明的方法

2.关键字对比

  • C语言的关键字都可以在OC源程序中使用
  • OC新增的关键字在使用时,注意部分关键字以"@“开头

3.数据类型对比

  • C语言数据类型
  • OC数据类型
类型 描述
BOOL 只有两个取值真和假
NSObject * OC中的对象类型
id 动态对象类型,万能指针
SEL 选择器数据类型
block 代码块数据类型

4.流程控制语句对比

  • OC增强for循环(java,C#都有对应语法)
for (NSString * name in NSArray){
    NSLog(@”%@”,name);
}
  • 注意: 方法只能写在类里面, 而函数可以写在任何地方
    • 对象方法,使用对象调用的方法
    • 类方法,使用类名调用的方法
对象方法
- (id)initWithString: (NSString * )name;

类方法
+ (MyClass *)createMyClassWithString: (NSString *)name;

5.面向对象新增语法

  • 属性生成器
    • @property
    • @synthesize
//声明属性
@property (nonatomic,strong)NSString * name;

//合成属性
@synthesize name = _name;
  • 分类
    • 分类与继承
    • 使用分类扩展类,无需子类化
@interface NSString (MyNSString)

- (NSString *) encryptWithMD5;

@end
  • 协议
    • 使用协议声明方法
    • 协议类似于C#,java中的接口
@protocol MyProtocol

- (void)myProtocolMethod;

@end

6.新增异常处理

  • 用于处理错误信息

  • 格式:

    • @try .... @catch .... @finally
  • 示例

//创建对象car
Car *car = [Car new];
@try {
//调用一个没有实现的方法
[car test];
 }@catch (NSException *exception) {
       NSLog(@"%@",exception.name);
}@finally {
 NSLog(@"继续执行!\n");
}

相关文章

  • 总结:八天学会OC语言(上)

    day1 OC语言day01-01OC的简介(附C语言知识点回顾)OC语言day01-02C和OC的对比OC语言d...

  • OC与C的对比

    一 OC与C的对比 1、源文件对比 .c语言中常见的源文件...

  • OC_NSArray和NSMutableArray

    今天记录一下OC中的数组,肯定的会相对于C语言的数组来对比!下面就来简单地对比一下: C和OC的数组差别 //C的...

  • IOS学习之——新手基础学习资料分享

    /* 1、OC简介: OC 是C语言的超集,它在C语言的基础上增加了最小的面向对象的语法 2、对比C来学习OC 数...

  • OC和C中的数据类型

    数据类型对比 C语言数据类型C语言数据类型 OC数据类型

  • oc和c语言对比

    1.源文件对比 C语言中常见源文件.h头文件,.c文件 OC中的源文件.h头文件,.m与.mm的实现文件 — 2....

  • 编写高质量代码--第一章

    第一条 Object-C语言的起源 oc是面向对象语言 虽然oc是面向对象的,但是对比java c++这类面向对象...

  • OC—面向对象

    1.OC: Object- C ,面向对象的语言 2、OC和C的区别 <1> oc是 c的超集 ,oc是在c语言的...

  • OC简介

    OC与C对比 1. 源文件对比 C语言中常见源文件.h头文件,.c文件.h 头文件,用于存放函数声明.c C语...

  • Objective-C概述

    OC概述 • Objective-C简称OC,OC是C语言的扩充,并且OC是iOS和OS X操作系统的编程语言...

网友评论

      本文标题:oc和c语言对比

      本文链接:https://www.haomeiwen.com/subject/wrpjhttx.html