文档介绍:第7章自定义数据类型
1)用户根据需要自己声明一些类型:
数组
2)用户可以自己声明的类型还有:
结构体(structure)类型
共用体(union)类型
枚举(enumeration)类型
类(class)类型
3)称用户自定义类型, user-defined type, UDT
本章学习
1、什么是结构体
将不同类型的数据组合成一个有机的整体,
C++语言提供了一种数据结构, 称为结构体。
例:
struct Student
{ int num; //学号
char name[20]; //姓名
char sex; //性别
int age; // 年龄
};
2、结构体类型声明方式
struct 结构体类型名
{ 成员表列
}; //注意分号不要遗漏
其中:成员表列中放入各个成员的类型声明。
例:
struct Student
{ int num; //类型名成员名;
char name[20];
char sex;
int age;
};
3、名词
1)结构体类型名
例: struct Student
{ int num; //每个成员的声明语句
char name[20];
};
结构体类型名:Student
2) 成员名
如:num, name
3) 域表:成员表列
4) 一个域:结构体中的每一个成员(分量)。
5)结构体类型可全局声明, 也可局部声明。
1、定义结构体类型变量的方法
说明:使用结构体时, 不能使用结构体类型名,
只能使用结构体变量。
定义结构体变量有三种方法。
方法1:先声明结构体类型, 再定义变量。
方法2:声明结构体类型的同时, 定义变量。
方法3:直接定义结构体类型变量。
方法1:先声明结构体类型, 再定义变量。(最可取)
例:
先声明结构体类型
struct Student //24B
{ int num;
char name[20];
};
再定义变量
Student student1, student2;
系统根据变量定义, 分配内存空间。
结构体变量名
结构体类型名
方法2:声明的同时定义变量
struct 结构体类型名
{
成员表列
}结构体变量名表列;
例:
struct Student
{
int num;
char name[20];
}student1, s2, s3;
方法3:直接定义变量(不可取)
struct
{
成员表列
}结构体变量名表列;
例:
struct
{
int num;
char name[20];
}student1, s2, s3;
其它说明:
不要误认为凡是结构体类型都有相同的结构。
例:
struct Student //24B
{
int num;
char name[20];
};
struct Student1 //8B
{
int num;
int age;
};