学习嵌入式下C语言第14天(结构体)

学习嵌入式下C语言第14天(结构体)_第1张图片

1.结构体:
    1.结构体类型定义
    2.结构体变量的定义
    3.结构体元素的访问
    4.结构体的存储:
        内存对齐:
            char   按照1字节对齐
            short  按照2字节对齐
            int    按照4字节对齐
            double 按照4字节对齐

        结构体整体的大小必须为最大基本类型长度的整数倍
    5.结构体作为函数参数
       
                struct student 
                {
                    char name[32];
                    char sex;
                    int age;
                    int score;
                };

    6.结构体数组:
        struct student s[5];

2.共用体:
    union 共用体名 
    {
        数据类型1 成员变量1;
        数据类型2 成员变量2;
        数据类型3 成员变量3;
        ...
    };

    共用体所有成员变量共享同一片空间

    内存大小端:
        1.内存小端:
            内存低地址存放低数据位
            内存高地址存放高数据位

        2.内存大端:
            内存低地址存放高数据位
            内存高地址存放低数据位

3.枚举:
    enum 枚举类型名 
    {
        枚举常量1,
        枚举常量2,
        枚举常量3,
        ..
    };

    1.枚举类型一般说明将来变量的值在给定的常量中选择其一作为它的值
    2.枚举常量的值总是前一个枚举常量的值+1,第一个默认为0值
    3.枚举常量默认为int类型,可以直接在程序中使用

4.位运算运算符:
    &   按位与
    |   按位或
    ^   按位异或        相同为0 相异为1
    ~   按位取反
    >>  右移            右移n位 等价于 让该数 / 2^n 
    <<  左移            左移n位 等价于 让该数 * 2^n 

    与0得0
    或1置1
    按位异或实现数据交换:
        a = a ^ b;
        b = a ^ b;
        a = a ^ b;

    将变量的第n位置0:
        num = num & ~(1 << n)

    将变量的第n位置1:
        num = num | (1 << n)
 

你可能感兴趣的:(学习)