zoukankan      html  css  js  c++  java
  • 【c专家编程】分析c语言的声明

    联合:

    在结构中,每个成员依次存储,而在联合中,所有成员都从偏移地址零开始存储,联合一般被用来节省空间,用法和struct相同。

    union bits32_tag {
        int whole; // 一个32位的值
        struct {char c0, c1, c2, c3;} byte; //4个8位的字节
    };
    
    int main()
    {
        bits32_tag value;
        value.whole = 0b1111111111111111;
        cout << "value.whole: " << value.whole << endl; // 65535
        cout << "c0: " << (size_t)value.byte.c0 <<endl; // 4294967295
        cout << "c1: " << (size_t)value.byte.c1 <<endl; // 4294967295
        cout << "c2: " << (size_t)value.byte.c2 <<endl; // 0
        cout << "c3: " << (size_t)value.byte.c3 <<endl; // 0
        return 0;
    }

    枚举:把一串名字与一串整型值联系在一起

    格式:enum 可选标签 {...} 可选变量定义;

    enum sizes {
        small = 7,
        medium,
        large = 10,
        humungous
    };
    
    int main()
    {
        cout << small << " " << medium << " " << humungous ;
        return 0;
    }

    缺省情况下,整型值从零开始,如果对列表中的某个标识符进行了赋值,那么其后的标识符的值比所赋的值大1。枚举有个优点,#define定义的名字一般在编译的时候被丢弃(被值给取代),而枚举名字则通常一直在调试器中可见,可以在调试代码时使用它们。

  • 相关阅读:
    Java当中的IO
    Java当中的类集框架
    Java当中的JVM
    Java当中的常量池
    详细讲解String和StringBuffer和StringBuilder的使用
    Java中流的操作以及编码解码
    VMware-workstation12.5.6 新建虚拟机 安装 centos6.5
    linux 常用命令
    macos 下安装brew
    mysql 的一些事
  • 原文地址:https://www.cnblogs.com/ljygoodgoodstudydaydayup/p/6736198.html
Copyright © 2011-2022 走看看