1 / 13
文档名称:

第18章结构体.ppt

格式:ppt   大小:517KB   页数:13页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第18章结构体.ppt

上传人:mh900965 2018/2/21 文件大小:517 KB

下载得到文件列表

第18章结构体.ppt

相关文档

文档介绍

文档介绍:第18章结构体
杨章伟
e-mail:yang505412@
课程内容安排
结构体
结构体的应用
结构体数组
结构体指针
小结<br****题
结构体
结构体(struct)在C语言中用于处理多个单一数据组成的数据集合。在复杂的数据处理中,结构体是必不可少的。结构体的使用是C语言编程的一个重要部分。
结构体是指包含多个单一数据的数据集合。在一些应用中,需要处理的数据往往是若干个单一数据的集合。例如,一个完整的个人信息往往需要包含姓名、年龄、性别、职业、地址、电话等信息。如果使用之前学****的简单数据类型来表示时间信息,就至少需要使用6个变量来实现,每次使用的时候都要访问至少6个变量,这是一个相当繁琐的过程。
C语言中提供了结构体数据类型作为一个集合来处理这种复杂数据,一个结构体可以将多个单一信息结合在一起作为一个整体来使用。
声明结构体类型
使用结构体时,首先要声明需要的结构体类型,其一般形式如下:
struct 结构体名{
数据类型1 结构体成员1;
数据类型2 结构体成员2;
数据类型3 结构体成员3;

}; /* 分号不可缺少*/
结构体名相当于这个结构体的标记,它与标识符struct共同组成这个结构体的名称。每一个结构体可以包含很多成员,每一个成员都有一个数据类型,这些成员可以被声明为除该结构体类型本身外的任意有效数据类型。
定义结构体变量
声明了结构体类型后,便可以使用该类型来定义结构体变量。C语言中定义结构体变量有三种形式,其实这也是声明结构体类型的三种形式:
,并定义结构体变量
,直接定义结构体变量
,再定义结构体变量
访问结构体成员
结构体变量的使用与之前学****过的一般变量的使用略有不同。定义一个结构体变量后,不能直接对结构体变量进行操作,要访问结构体变量,必须通过访问其成员来实现。
使用成员操作符(.)可以访问结构体成员。成员操作符是一个二元操作符,前面的操作符为结构体变量,后面的操作符为结构体成员名。其标准形式如下:
;
【范例18-2】结构体的使用
结构体数组
与定义结构体变量的方式类似的,定义结构体数组的方法也有三种:
,并定义结构体数组
,直接定义结构体数组

结构体数组示例
范例18-5演示了如何使用结构体数组来处理人物信息,并输出最年轻男性的人物信息。
【范例18-5】输出最年轻男性的信息。
结构体指针
结构体指针是使用结构体进行编程的重要内容。声明一个结构体指针变量,再将该变量初始化为一个存储结构体数据的内存空间的首地址后,便可以使用这个指针来访问结构体了。
定义一个指向结构体变量的指针与定义一个指向其他类型变量的指针方法基本一样,形式如下:
typedef struct {
int a;
char b;
double c;
} my_struct;
my_struct * p;
小结
结构体是C语言中最常用的高级数据类型,其应用十分广泛。读者必须要熟练掌握其使用方法的一些特性。本章先介绍了结构体的概念和定义方法,然后学****了如何访问结构体成员,最后讨论了结构体数组和结构体指针的使用方法。在本章的学****中,需要注意以下几点:
结构体的名称较长,可以使用typedef来得到简化的别名。
结构体可以有效地将有关系的数据关联在一起。
为了程序的安全性,对含有指针型成员的结构体空间赋值时,应该采用深复制的方式来实现。
最好不要使用对于含有指针性成员的结构体变量作为函数形参或返回值。