第九章 构造数据类型
结构体类型说明
struct 结构体标识符 { 成员变量列表; }; 如果没有结构体标识符,则称为无名结构体类型 |
引用结构体变量成员
l 结构体变量名.成员名 l 结构体指针名->成员名 l (*结构体指针名).成员名 |
共用体
共用体所有变量共用一块内存 定义格式如下: union 共用体标识符 { 成员变量列表; }; |
枚举
enum 枚举标识符{常量列表}; 允许设定枚举常量的对应整数值,但要求从左到右并且不能重复。 从第一个没有设定值得枚举常量开始,其整数常量值为前一个整数常量加1 既然是常量,自然可以直接引用,不加enum。 引用枚举类型变量: enum colors{red , white , black }; enum colors a, b ,c ; a = red ; b = white ; c = black ; 则a,b,c 都是整型变量,可以进行算术运算。 |
类型重定义 typedef
语法格式: typedef 类型名称 类型标识符; 主要应用: l 为自定义类型定义简洁的名称 l 为数组定义简洁的名称 typedef int INT_ARRAY_10[10]; typedef int INT_ARRAY_20[20]; INT_ARRAY_10 a,b,c,d; INT_ARRAY_20 e; l 为指针定义简洁的名称 typedef char* STRING ; STRING csName = {“John”}; l 定义函数指针 typedef int (*MyFun)(int a, int b); int Max (int a , int b); MyFun pMyFun; pMyFun = Max; 我的优快云里面有更详细的解释 |
位域
struct 位于结构名 { 位域列表; }; struct abc { int a:2; int b:1; int c:1; }; |