014 枚举 位段/位域 联合体

Posted huafan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了014 枚举 位段/位域 联合体相关的知识,希望对你有一定的参考价值。

 

/*
目录:
   一 枚举
   二 位段/位域
   三 联合体
*/

 

一 枚举

// 应用 - 协议编号
enum ETest    // 整数常量定义


    READ_ONLY = 1,
    HIDE,
    SYSTEM,
    TEST = 15,
    OK
;

int main(int argc, char *argv[])

    printf("%d\n", SYSTEM);
    printf("%d\n", OK);

    ETest test = TEST;
    printf("%d\n", TEST);

    return 0;

/*
3
16
15
*/

 


二 位段/位域

/*
typedef unsigned long long int INT;

struct SData

    INT nYear : 58;
    INT nMonth : 4;    // 0 - 12
    INT nDay : 5;    // 0 - 31
    INT nHour : 5;    // 0 - 24
    INT nMin : 6;    // 0 - 60
    INT nSec : 6;    // 0 - 60
;

int main(int argc, char *argv[])

    SData data =  2019, 9, 14, 18, 18, 10 ;
    printf("%lld/%lld/%lld %lld:%lld:%lld", data.nYear, data.nMonth, data.nDay,
        data.nHour, data.nMin, data.nSec);

    return 0;


/*
2019/9/14 18:18:10
*/

 


三 联合体

union UData

    int i;
    char c[4];
;

int main(int argc, char *argv[])

    UData data;
    data.c[0] = 0x11;
    data.c[1] = 0x22;
    data.c[2] = 0x33;
    data.c[3] = 0x44;

    printf("0x%x\n", data.i);

    return 0;

/*
0x44332211
*/

 

以上是关于014 枚举 位段/位域 联合体的主要内容,如果未能解决你的问题,请参考以下文章

C语言☀️自定义类型(结构体+位段+枚举+联合体)建议收藏

“解剖”c语言——自定义类型(结构体,位段,枚举,联合体)

#yyds干货盘点# C语言自定义类型的介绍(结构体,枚举,联合体,位段)

自定义类型(位段+枚举+联合)

自定义类型~结构体~位段~枚举~联合~超详解~一遍就会

c语言篇 +自定义类型(枚举联合结构体)以及位段