C语言结构体

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

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

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

                    类型     变量名;   注:分配空间编译器通过类型来分配

      初始化:定义变量时同时符初始值

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

          struct 类型名

          {
                  属性1;
                  属性2;
                  属性3;
                   ...
         };

               3.1.1无嵌套结构体:所有属性都是基本类型
               定义人的类型:人的信息(姓名,姓别,身高)
             

​
 struct people
               {
            //姓名:
                    char name[10];
            //性别
                    char sex;
            //身高
                    unsigned short height;
            };

​


        3.1.2嵌套结构体:属性是一个结构体变量
          

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


        
    3.2定义结构体变量:类型 变量名;
            struct 类型名 变量名;
     
     
    3.3引用结构元素:一定要通过结构体变量来引用属性。
        .运算符 :引用复杂类型的成员
        变量名.属性; 
        
    3.4结构体的分配空间法则:以最大字元素字节对齐    (*)
        1、查找最大元素的类型
          2、每个元素都分配以最大类型的最小的倍数。
        3、共享空间?
        
        
    注:gcc编译器可以指定对齐方式(这不是C语言的标准)
        __attribute__((packed))(了解一下)
        
    3.5结构体变量之间赋值:   注:同类型之间,不同类型的结构体是不能赋值的
        struct people a,b;
        a=b;

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值