C++程序设计 湖南大学 杜四春、银红霞 结构体类型中的成员名可以与程序中的变量名相 同,二者并不代表同一对象,编译程序可以自动对它 们进行区分。 最后,总结一下结构体类型的特点 (1)结构体类型是用户自行构造的。 2)它由若干不同的基本数据类型的数据构成 (3)它属于C++语言的一种数据类型,与整型 实型相当。因此,定义它时不分配空间,只有用它定 义变量时才分配空间
C++程序设计 湖南大学 杜四春、银红霞 结构体类型中的成员名可以与程序中的变量名相 同,二者并不代表同一对象,编译程序可以自动对它 们进行区分。 最后,总结一下结构体类型的特点: (1)结构体类型是用户自行构造的。 (2)它由若干不同的基本数据类型的数据构成。 (3)它属于C++语言的一种数据类型,与整型、 实型相当。因此,定义它时不分配空间,只有用它定 义变量时才分配空间
7,2结构体类型变量 杜四春、银红霞 的定义方法 结构体只是用户自定乂的一种数据类型,因此要 通过定义结构体类型的变量来使用这种类型。通常有 三种形式来定义一个结构体类型变量,分别说明如下: 721先定义结构体类型再定义变量名 这是C++语言中定义结构体类型变量最常见的方 式,一般语法格式如下 struct结构体名 成员表列 stru结构体名变量名;
C++程序设计 湖南大学 杜四春、银红霞 7.2 结构体类型变量 的定义方法 结构体只是用户自定义的一种数据类型,因此要 通过定义结构体类型的变量来使用这种类型。通常有 三种形式来定义一个结构体类型变量,分别说明如下: 7.2.1 先定义结构体类型再定义变量名 这是C++语言中定义结构体类型变量最常见的方 式,一般语法格式如下: struct 结构体名 { 成员表列; }; struct 结构体名 变量名;
C++程序设计 湖南大学 杜四春、银红霞 例如,定义几个职工变量: struct worker long number char name[20] char sex int age float salary char address [80] char phone [20]i struct worker worker1, worker2
C++程序设计 湖南大学 杜四春、银红霞 例如,定义几个职工变量: struct worker { long number; char name[20]; char sex; int age; float salary; char address[80]; char phone[20]; }; struct worker worker1,worker2;
C++程序设计 湖南大学 杜四春、银红霞 注意:“ struct worker”代表类型名,不能分开写 为: struct worker worker ∥)错误,没有指明是哪种结构体类型 或 worker worker1, worker 2 ∥)错误,没有 struct关键字 //系统不认为 worker是结构体类型 为了使用上的方便,程序员通常用一个符号常量 代表一个结构体类型。即在程序开头加上下列语句: #define worker struct worker 这样在程序中, WORKER与 struct worker完全等效
C++程序设计 湖南大学 杜四春、银红霞 注意:“struct worker”代表类型名,不能分开写 为: struct worker1,worker2; //错误,没有指明是哪种结构体类型 或 worker worker1,worker2; //错误,没有struct关键字 //系统不认为worker是结构体类型 为了使用上的方便,程序员通常用一个符号常量 代表一个结构体类型。即在程序开头加上下列语句: #define WORKER struct worker; 这样在程序中,WORKER与struct worker完全等效
C++程序设计 湖南大学 杜四春、银红霞 例如 WORKER long number char name[2o]i char sex Int age float salary char address[80li char phone [20]i) WORKER Worker worker 2 此时,可以直接用 WORKER定义 worker1 worker2两个变量,而不必再写关键字 struct
C++程序设计 湖南大学 杜四春、银红霞 例如: WORKER { long number; char name[20]; char sex; int age; float salary; char address[80]; char phone[20]; }; WORKER worker1,worker2; 此 时 , 可以直接用 WORKER 定 义 worker1 、 worker2两个变量,而不必再写关键字struct