C语言基础 -55 构造类型

    技术2022-07-11  87

    book@100ask:~/C_coding/CH02$ cat union.c #include <stdio.h> #include <stdlib.h> #include <stdint.h> int main() { uint32_t i = 0x11223344; printf("%x\n",(i >> 16) i & 0xFFFF); //实现高8位与低8位求和 exit(0); } book@100ask:~/C_coding/CH02$ make union cc union.c -o union book@100ask:~/C_coding/CH02$ ./union 4466

    union:意味着成员变量不可共存,同时间只可有一个变量有效。

    book@100ask:~/C_coding/CH02$ cat union.c #include <stdio.h> #include <stdlib.h> #include <stdint.h> union { struct { uint16_t i; uint16_t j; }x; uint32_t y; }a; int main() { a.y = 0x11223344; printf("%x\n",a.x.i a.x.j); // uint32_t i = 0x11223344; // printf("%x\n",(i >> 16) i & 0xFFFF); exit(0); } book@100ask:~/C_coding/CH02$ make union cc union.c -o union book@100ask:~/C_coding/CH02$ ./union 4466

    Processed: 0.014, SQL: 9