结构体

1.C语言基本结构类型:

字符型,整形,浮点型

2.结构体(属于复杂类型)

 结构体是自定义类型。

3.定义结构体

struct 类型名

          {

                    属性1;

                    属性2;

                    .......

          }

 无嵌套结构体:所有属性都是基本变量类型

struct people
{
//      性别
        char sex;
//      属性
        int id;
//      姓名
        char name[100];
//      身高
        short height;
};

嵌套型结构体:有属性为结构体变量

//学生结构体
struct student
{
        struct people msg;
        int c;
};

4.定义结构体变量

struct 类型 变量名;

//定义变量:分配空间(按类型来分配)
        struct people lf={'m',1001,"lifei",178};

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

1、查找最大元素的类型

2、每个元素都分配以最大类型的最小的倍数。

3、共享空间(当类型空间和不大于最大元素的类型时相邻类型可以共享空间)

5.引用结构元素:

一定要通过结构体变量来引用属性。
          .运算符 :引用复杂类型的成员
          变量名.属性; 

//引用:通过变量名(引用内容)
       
        printf("%s ",lf.name);
        printf("%d ",lf.id);
        printf("%c ",lf.sex);

6.结构体变量之间赋值:

  注:同类型之间,不同类型的结构体是不能赋值的
        struct people a,b;
        a=b;

 

你可能感兴趣的:(结构体)