1.结构体
1.结构体的定义形式
结构体用来存放一组不同数据类型的数据,结构体没有初始化。结构体包含多个数据类型,也可以包含其他结构体,称为构造数据类型。
struct 结构体名
{
成员变量
}
例如:
struct stu
{
char *name; //姓名
int num; //学号
int age; //年龄
char group; //所在学习小组
float score; //成绩
};
结构体是一种数据类型就可以定义变量,例如:struct stu stu1,stu2;定义了都为stu类型的stu1和stu2结构体,注意没有typedef定义结构体时,struct不能少。还可以如下定义:
将结构体变量放在结构体定义后面
struct stu
{
char *name; //姓名
int num; //学号
int age; //年龄
char group; //所在学习小组
float score; //成绩
}stu1,stu2;
如果只需要 stu1、stu2 两个变量,后面不需要再使用结构体名定义其他变量,那么在定义时也可以不给出结构体名,如下所示:
struct
{
char *name; //姓名
int num; //学号
int age; //年龄
char group; //所在学习小组
float score; //成绩
}stu1,stu2;
1.2结构体的成员变量
结构体的成员变量在内存中和数组一样是连续的
1.3成员变量的使用
结构体使用 . 来获取单个成员。获取结构体成员的一般格式:
结构体变量名 . 成员名,还可以使用初始化时进行统一赋值。例如:
struct
{
char *name; //姓名
int num; //学号
int age; //年龄
char group; //所在小组
float score; //成绩
} stu1, stu2 = { "Tom", 12, 18, 'A', 136.5 };