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;