下载此文档

第08章结构体、共用体与枚举类型.ppt


文档分类:IT计算机 | 页数:约79页 举报非法文档有奖
1/79
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/79 下载此文档
文档列表 文档介绍
第08章结构体、共用体与枚举类型
第1页,共79页,2022年,5月20日,14点4分,星期五
第8章 结构体、共用体与枚举类型
概述
结构体定义
结构体变量的使用
结构体数组
结构体与凡需使用结构体类型数据的,都必须在程序中先行加以定义。定义了一个结构体类型后,系统并没有为所定义的各成员项分配相应的存储空间,这是因为定义类型而不是定义变量。定义一个类型只是说明该类型的结构,即告诉系统它由哪些类型的成员构成,各占多少字节、按什么形式存储,并把它们当成一个整体来处理。应当明确,只有在定义了变量以后,系统才为所定义的变量分配相应的存储空间。
第9页,共79页,2022年,5月20日,14点4分,星期五
结构体变量定义
结构体作为一种数据构造类型在C 语言程序中必须经过“定义——初始化——引用”的过程。下面我们分别来进行讨论。我们首先来讨论结构体类型变量的定义。
定义一个结构体变量,可以采用以下三种不同的方法:
,然后再进行结构体变量的定义
例如,上面已定义了一个结构体类型struct examinees后,现在就可以用它来定义相应类型的变量了。例如:
struct examinees stud1, stud2;
第10页,共79页,2022年,5月20日,14点4分,星期五
其中struct examinees称为结构体类型名,stud1,stud2称为结构体变量名。也称变量stud1,stud2具有struct examinees类型的结构。如图8-2所示:
应当说明:
(1) 一旦进行了上述结构体变量的定义后,变量stud1和stud2就与C语言中的其它变量一样,系统将根据组成该变量各成员的不同类型,分配相应的存储空间。
(2) 结构体变量名末尾必须带有一个分号,用以表示变量表结束。
stud1
20101
“Li Ping”
‘M’
18
“2C”

stud2
20102
“Liu Hao”
‘F’
20
“2P”
90
图8-2 定义结构体类型变量:stud1 和stud2
第11页,共79页,2022年,5月20日,14点4分,星期五
(3) 定义一个结构体类型变量与定义一个标准类型变量不同。例如,在定义一个整型变量时,只需指出int变量名即可。但在定义结构体类型变量时不仅要求指定变量为结构体类型,而且要求指定为某一特定的结构体类型。
因此将上述考生结构体类型变量定义成:
examinees stud1, stud2 或者:struct stud1, stud2;都将是错误的。
(4) 定义了一个结构体类型后,就可以多次用来定义各种具体的结构体类型变量。
(5) 为了使用方便,通常在程序开头,定义一个符号常量来代表一个结构体类型:
# define STUD struct examinees
这样在程序中,STUD就与struct examinees完全等效。
第12页,共79页,2022年,5月20日,14点4分,星期五
STUD
{
long num;
char name[20];
int age;
char grade[2];
float score;
}
这样定义类型后,就可以直接用STUD来定义变量了;
STUD stud1, stud2;
于是用该方法定义结构体变量就和用int,char,float定义基本变量的形式一样,不必再写struct关键字。
第13页,共79页,2022年,5月20日,14点4分,星期五

用该方式定义的一般形式是:
struct 结构体类型名
{
数据类型 成员名1;
数据类型 成员名2;

数据类型 成员名n;
} 结构体变量名表;
例如:上述软件考试的考生结构体类型变量又可以用该方法定义如下:
第14页,共79页,2022年,5月20日,14点4分,星期五
struct examinees
{
long num;
char name [20];
char sex;
int age;
char grade[2];
float score;
}stud1, stud2;
这种定义方式较为紧凑,既定义了类型,又定义了变量。如果还需定义其它同类型的结构体变量,还可用:
struct examinees stud3, stud4;
这样表示又定义了两

第08章结构体、共用体与枚举类型 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数79
  • 收藏数0 收藏
  • 顶次数0
  • 上传人卓小妹
  • 文件大小3.51 MB
  • 时间2022-08-12