zoukankan      html  css  js  c++  java
  • oc基础第一天---c语言和oc语言的对比

    /*

      1. OC程序的编译.

         它的编译、连接、执行和C程序是相差无几的.

         1). 在.m文件中写上符合OC语法规范的源代码.

         2). 使用 cc -c 指令来编译我们的文件.

             a. 预处理.

             b. 检查语法

             c. 生成.o的目标文件.

         3). 链接

             cc xx.o 

             a. 添加启动代码.

             b. 链接函数. 将要调用的函数的实现拷贝进来

             在代码中如果使用到了框架中的功能  就必须要指定系统到那1个框架中去找.

              cc main.o -framework Foundation

         4). 链接完毕之后 会生成1个a.out可以执行文件 一样可以执行.

     2. OC程序各个阶段的后缀名.

                C        OC

     源文件     .c        .m

     目标文件    .o       .o

     可执行文件  .out     .out

        

     3. OC的数据类型.

        1). OC支持C语言中的所有的数据类型.

            基本数据类型: int float double char

            构造类型: 数组 结构体 枚举

            指针:

            void 

            typedef 定义类型.

        2). OC在此基础之上新增了一些数据类型.

            a. BOOL类型. 可以存储YES和NO 之中的任意1个数据.

               一般情况下,使用它来保存1个条件表达式的结果.

               YES代表条件成立  NO代表条件不成立.

               BOOL的本质: 是1个有符号的char变量. YES实际上1 NO实际上是0.

               输出的话.只能以整型输出.

            b. Boolean类型. 可以存储true或者false

               代表1个条件的真假. 用来保存1个条件表达式的结果.

               本质: 无符号的char变量.      

                     true 1

                     flase 0.

        

            c. id类型. 万能指针. 谁都可以指.

            d. class 类.

            e. SEL  方法包装器.

            f. nil  与 NULL 差不多.

            g. block 代码块.

        

     4. OC支持C语言中的所有的运算符.没有新增.

        赋值运算符. = 

        算术运算符  + - * / % 

        复合赋值运算符 += 

        自增自减 ++ --

        关系运算符  > >= .....

        逻辑运算符  && ||  !

        取地址运算符   &

        * 

        ........

     5. 控制语句.

         

        OC支持C的所有的控制语句.

        if 

        switch-case

        while

        do-while

        for

        数组

        指针

        函数

        .......

        全部都被OC支持

     6. OC支持C的所有的关键字. 并且效果一直.

        OC还新增了一些关键字. OC新增的关键字绝大部分以@开头.

     7. 函数定义和调研 一样.

     OC是完全兼容C语言. 在OC中可以写任意的C代码 并且效果和C的一样.

  • 相关阅读:
    wonderful life
    .net 4.5 webform 提取ModelState错误信息
    asp.net core Theme 中间件
    asp.net mvc 动态编译生成Controller
    asp.net mvc中换肤机制类库 ThemedViewEngines
    vs code 添加jquery的智能提示
    vs2017 iisexpress 绑定自定义域名
    asp.net Mvc 动态创建Controller
    查询Windows api
    预先创建占用一定磁盘空间的文件(使用C#)
  • 原文地址:https://www.cnblogs.com/qjrz/p/4649888.html
Copyright © 2011-2022 走看看