------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
一 构造类型
1.构造数据类型 的定义
构造数据类型: 构造数据类型是根据已定义的一个或多个数据类型用构造的方法来定义的。
2.构造类型的类型:
1)数组类型
2)结构体类型
二 结构体
”结构“是一种构造类型,他是由若干”成员“组成的。每一个成员可以说一个基本数据类型或又是一个构造类型。
1.结构体的定义
struct 结构体名{
成员列表;
};
例如:定义一个汽车的结构体
struct Car{
char *color; //颜色
int lunzi; //轮子 //成员列表;
int speed;//速度
};
例如:定义一个手机的结构体
struct iphone{
char *color;/颜色
float size; //尺寸 //成员列表;
int sn; //编号
};
2. 结构体变量的定义1)先定义结构体,在定义变量
struct student{
char name[22]; //姓名
int sn; //编号
int age; //年龄
};
注意:1)结构体定义完成以后,计算机并不会给结构体分配内存空间 2)会在定义结构体变量后分配内存空间
结构体变量定义格式:
struct 结构体名 结构体变量名;
例如: struct student stu; //这句话表示定义一个student 结构体类型的变量,变量名是stu;
//stu因为是student类型的,可以存放 姓名 ,编号,年龄
2)定义结构体的同时定义变量
struct student{
char name[22]; //姓名
int sn; //编号
int age; //年龄
}stu1,stu2,stu3;
3)定义匿名结构体
struct {
char name[22]; //姓名
int sn; //编号
int age; //年龄
}stu4,stu5,stu6;
struct student{
char name[22]; //姓名
int sn; //编号
int age; //年龄
};
3. 结构体变量的 初始化
1)先定义结构体变量,再初始化;
struct student{
char name[22]; //姓名
int sn; //编号
int age; //年龄
};
//先定义结构体变量,再初始化struct student stu7;
//先定义结构体变量,再初始化
stu7.sn=28;stu7.age=18;
strcpy(stu7.name,"张少");
2)定义结构体变量的同时初始化;
struct student stu8={”李四“,23,29};
4.结构体数组
1)结构体数组的概念:结构数组的每一个元素都是具有相同结构类型的下标结构变量
2)结构体数组的定义
struct 结构面{
成员表列
}数组名[数组长度];
例如:
struct student{
char name[22]; //姓名
int sn; //编号
int age; //年龄
}stu[5];
3) 结构体数组的初始化
struct student{
char name[22]; //姓名
int age; //年龄
};
struct student stu[2]={{"张少"12,},{"李四",16}}; 4)结构体数组的应用
实现简易通讯录
三 枚举类型
1.定义:
enum 枚举类型名{枚举值表};
例如:enun sex{sexman,sexwoman,sexyao} ;
2. 枚举类型变量的定义
enun sex isex;
3. 枚举类型变量的初始化
enun sex isex=sexyao;