【案例1】-必备知识 。结构体变量的内存分配 struct { char a; double b; int c; short d; 1S, 占1个字节填充7个字节 占8个字节 占4个字节占2个字节填充2个字节 成员a 成员b 成员c 成员d
• 结构体变量的内存分配 【案例1】-必备知识 struct { char a; double b; int c; short d; }S; 成成员员aa 占1个字节 s 填充7个字节 成成员员bb 占8个字节 成成员员cc 占4个字节 成成员员dd 占2个字节 填充2个字节
【案例1】-必备知识 ·结构体变量的初始化 一由于结构体变量中存储的是一组类型不同的数据,因此为结构体变量初 始化的过程,其实就是为结构体中各个成员初始化的过程。根据结构体 变量定义方式的不同,结构体变量初始化的方式可分为两种。 1在定义结构体类型和结构体变量的同时,对结构体变量初始化 2.定义好结构体类型后,对结构体变量初始化
• 结构体变量的初始化 − 由于结构体变量中存储的是一组类型不同的数据,因此为结构体变量初 始化的过程,其实就是为结构体中各个成员初始化的过程。根据结构体 变量定义方式的不同,结构体变量初始化的方式可分为两种。 1.在定义结构体类型和结构体变量的同时,对结构体变量初始化 2.定义好结构体类型后,对结构体变量初始化 【案例1】-必备知识
【案例1】-必备知识 。结构体变量的初始化 在对结构体初始化时,如果只初始化其中一部 注意 分成员,则要对前面的成员初始化,后面的成 员可以空余,因为给成员变量赋值时,编绎器 是按成员从前往后匹配,而不是按数据类型自 动去匹配
在对结构体初始化时,如果只初始化其中一部 分成员,则要对前面的成员初始化,后面的成 员可以空余,因为给成员变量赋值时,编绎器 是按成员从前往后匹配,而不是按数据类型自 动去匹配。 • 结构体变量的初始化 【案例1】-必备知识
【案例1】-必备知识 ·结构体变量的引用 一定义并初始化结构体变量的目的是使用结构体变量中的成员。在C语 言中,引用结构体变量中一个成员的方式如下所示: 结构体变量名成员名
• 结构体变量的引用 − 定义并初始化结构体变量的目的是使用结构体变量中的成员。在C语 言中,引用结构体变量中一个成员的方式如下所示: 结构体变量名.成员名 【案例1】-必备知识
【案例1】-必备知识 。typedef-—给数据类型取别名 typedef关键字用于为现有数据类型取别名。 typedef数据类型别名 (1)为基本类型取别名 typedef int ZX; ZXi,j,k; (2)为数组类型取别名 typedef char NAME[10]; NAME class1,class2; (3)为结构体取别名 typedef struct Studentf....STU; STU stu1;
• typedef——给数据类型取别名 − typedef关键字用于为现有数据类型取别名。 【案例1】-必备知识 (1)为基本类型取别名 typedef 数据类型别名 typedef int ZX; ZX i,j,k; (2)为数组类型取别名 typedef char NAME[10]; NAME class1,class2; (3)为结构体取别名 typedef struct Student{….}STU; STU stu1;