logo资料库

中国地质大学C++课件7.ppt

第1页 / 共44页
第2页 / 共44页
第3页 / 共44页
第4页 / 共44页
第5页 / 共44页
第6页 / 共44页
第7页 / 共44页
第8页 / 共44页
资料共44页,剩余部分请下载后查看
第六章 结构体 ● 结构体类型的定义 ● 结构体类型变量和指针的定义 ● 结构体类型变量的使用和初始化 ● 结构体数组的使用 C++ Programming Language 中国地质大学计算机教研室
§7.1 结构体类型的定义 形式: struct 结构体名 { 结构体成员表列 }; 结构体成员表列也称“域表”,每个成员也 称结构体的一个域。 C++ Programming Language 中国地质大学计算机教研室
例:定义学生结构体类型 struct student { long int num; char name[20]; char sex; float score; char addr[30]; student *p; }; 说明:(1)定义一个结构体,仅定义一个数据类型,并 不分配存储空间。 C++ Programming Language 中国地质大学计算机教研室
(2)结构体成员可以是基本类型(整型、实型、字符型、 数组、指针等),也可是已定义的另一结构体类型。 (3)函数内定义的结构体,仅限于该函数内使用。 所有函数外部(main()前)定义的结构体,为所有函 数使用。 (4)结构体成员不能是自身结构体变量,但可用结构体 指针作成员。 C++ Programming Language 中国地质大学计算机教研室
例:成员可为结构体变量 struct date { int month; int day; int year; }; struct student { long int num; char name[20]; char sex; struct date birthday; char addr[30]; }; C++ Programming Language 中国地质大学计算机教研室
§7.2 结构体变量和指针的定义 形式: 结构体名 结构体变量(指针)名表; 例:struct student stud1,stud2,*p; 说明: (1)C++中,关键字struct 可省略。 (2) 可在定义结构体类型时,同时定义结构体变 量或指针。 C++ Programming Language 中国地质大学计算机教研室
例: struct student { long int num; char name[20]; float score; char addr[30]; }stud1,stud2,*p; 每个结构体变量分配存储空间: 4+20+4+30=58 Byte C++ Programming Language 中国地质大学计算机教研室
也可用长度运算符测定: 形式: sizeof(数据类型或变量名) 例如: sizeof(stud1) C++ Programming Language 中国地质大学计算机教研室
分享到:
收藏