美文网首页关于ios开发的那些故事
关于 Objective-C 和 C 语言的一些事

关于 Objective-C 和 C 语言的一些事

作者: 隔壁的王叔叔来了 | 来源:发表于2019-12-10 16:50 被阅读0次
    image.png

    Objective-C概述

    1.Objective-C 简称为Obj-C/OC (下文为了省事,直接用OC代替)。诞生于20世纪80年代初期,由 Brad Cox 结合C语言和Smalltalk的优势而设计出来的。1995年,由乔布斯所在的NeXT公司获得OC的全部商业版权。1996年苹果公司收购了NeXT。OC成为Mac平台的主要开发语言(后来又有了Swift)。

    2.OC语言是C语言的升级版,OC坏境中兼容C语言的一切语法,并在C语言 的基础上增加了一小部分的面向对象的语言。将C语言中的繁琐,复杂的语法封装为更简单的形式。

    3.简单直接的说,OC语言就是面向对象的C语言。(C语言是面向过程)

    OC的基本语法

    1.OC中,支持一切的C语言的基本语法,并在C语言的基础上增加了一小部分的面向对象的语言。例如:NSString,NSNumber,NSInteger.....。

    2.NS前缀的由来:NextStep ---->Cocoa ---->Foundation框架中。NS就是NextStep公司当初的语法缩写。

    3.@符号:

    • 将C语言的字符串转化为OC语言的字符串;
    • OC中的绝大部分的关键字都是以@符号开头;

    4.注释:注释和C语言的注释相同,分为单行注释和多行注释;

    5.函数的定义和调用:和C语言的函数定义与调用相同;

    6.OC中的数据类型:

    • C语言中的所有数据类型:
      • a.基本数据类型:int double float char
      • b.构造类型:数组 结构体 枚举
      • c.指针类型: int *p1
      • d.空类型: void
      • e.typedef自定义类型
    • Bool/Boolean类型;
    • class 类型,类;
    • id类型;
    • SEL 方法选择器;
    • block 代码段;

    7.OC的运算符:OC支持C语言中所有的运算符

    • 赋值运算符:=
    • 算术运算符:+ - * / %
    • 复合赋值运算符:+= -= *= /=
    • 自增与自减:++ --
    • 关系运算符:> >=
    • 逻辑运算符:&& || !
    • 取地址运算符:&
    • 指针访问运算符:*
    • 位运算符 & | ^ ~

    8.OC的控制语句:OC支持C语言中的所有控制语句

    • if
    • for
    • while
    • do-while
    • 数组
    • 指针
    • 函数

    9.OC的关键字:OC支持C语言中全部的关键字,并且运行效果相同

    OC与C语言的对比

    1>相同点:

    1.main函数依旧是OC程序的入口和出口;

    2.依旧有一个int类型的返回值,代表着程序生命周期的结束;

    3.在函数的声明与调用,注释方面都是与C语言相同;

    4.OC支持C语言中所有的运算符,控制语句,关键字

    2>不同点:

    1.OC语言相对于C语言而讲,在C语言的语法基础上新增了一小部分的的面向对象的语法;

    2.OC语言将C语言的语法进行了封装,使其语言结构更加的简单;

    3.OC程序的源文件后缀名的改变(OC程序的后缀名为.m)。m是Message的意思,同时也代表着一个OC中最重要的一个机制——消息机制;

    4.在引入文件时,C语言使用的#include<*****>而OC使用的为#import<*****>:

    • 以#开头的的都是一个预处理指令,将引用的文件内容在预编译的时候拷贝到指定地方;
    • 一个文件中多次使用的#import<*****>指令时,程序底层会进行判断是否已经包含相同文件,如果没有包含会进行引用;如果包含将不会重复引用;

    相关文章

      网友评论

        本文标题:关于 Objective-C 和 C 语言的一些事

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