结构体(复杂类型)

1、C语言基本类型:字符型,整型,浮点型

2、结构体(复杂类型):自定义类型

3、定义变量:为了分配空间

        类型  变量名;        //注:分配空间编译器根据类型自动分配

4、初始化:定义变量同时赋值

5、结构体

(1)结构体(自定义)的类型

        struct 类型名
     {
        属性1;
        属性2;
        属性3;
        ...
     };

(2)无嵌套结构体:所有属性都是基本类型

       //定义人的类型:人的信息(姓名,姓别,身高)
            struct people
            {
            //姓名:
                    char name[10];
            //性别
                    char sex;
            //身高
                    unsigned short height;
            }; 

(3)嵌套结构体:属性是一个结构体变量

        struct people
            {
                ...
                struct *** 变量名;
                ...
            };

(4)定义结构体变量:类型 变量名;

        struct  类型名  变量名;

(5)引用结构元素:一定要通过结构体变量来引用属性。

        .运算符:引用复杂类型的成员

        变量名.属性;

(6)结构体的分配空间法则:以最大元素字节对齐

      注:gcc编译器可以指定对齐方式(这不是c语言标准)

        __attribute__((packed))

(7)每个元素都分配以最大类型的最小的倍数

(8)结构体变量之间赋值:注:同类型之间,不同类型的结构体是不能赋值的

        struct  people  a,b;l

        a=b;

猜你喜欢

转载自blog.csdn.net/weixin_42581477/article/details/81120140