美文网首页
NDK启航篇——C语言基础(联合体)

NDK启航篇——C语言基础(联合体)

作者: 爺珍爱那颗心 | 来源:发表于2020-04-03 08:54 被阅读0次
    ndk
    NDK启航篇——C语言基础
    NDK启航篇——C语言基础(指针)
    NDK启航篇——C语言基础(函数指针)
    NDK启航篇——C语言基础(内存分配)
    NDK启航篇——C语言基础(字符串)
    NDK启航篇——C语言基础(结构体)
    NDK启航篇——C语言基础(结构体补充)

    今天写一下联合体union(比较简单)。

    什么是联合体?

    • 不同类型的变量,共同占一段内存(相互覆盖),联合体变量任何时刻只有一个变量存在,所以也叫共用体

    联合体的作用

    • 节省内存

    联合体的大小

    • 联合体变量的大小等于最大的成员所占的字节数

    联合体的定义

    • union 名字{};

    示例代码如下

    union MyValue{
      int y;
      int x;
      double z;
    };
    void main(){
      union MyValue d1;
      d1.x = 90;
      d1.y = 100;
      d1.z = 99.9;//最后一个赋值的有效
     
      getchar();
    }
    

    enum 枚举

    • 固定的数据
    • 枚举就是一种数据类型
    • 列举所有的情况
    • 限定值,保证取值的安全性
    enum Day{
      Monday,
      Tuesday,
      Wednesday
    };
    //不写默认相当于
    enum Day{
      Monday = 0,
      Tuesday = 1,
      Wednesday = 2
    };
    
    void main (){
      //枚举的值必须是括号中的值
      enum Day d = Monday;
      printf("%#x,%d\n",&d,d);
     /* int i = 0;
      enum Day *p = &d;
      for(;i<3;i++){
       printf("%#x,%d\n",p,*p);
        p++;
    }*/
      getchar();
    }
    

    联合体的知识点到这里就写完了,明天写文件的读写IO操作, 这是C语言最后的部分喽,提前给自己鼓个掌😄。

    相关文章

      网友评论

          本文标题:NDK启航篇——C语言基础(联合体)

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