14.15 关键概念

表示一个编程问题所需的信息通常要比一个或多个数字更为复杂。程序可能会处理具有多个属性的实体或实体集合。例如,表示一个客户需要他(她)的姓名、地址、电话号码以及其他信息;表示一个电影DVD可以用它的标题、发行人、播放时间、价格等等。C的结构使您可以在一个单独的单元中收集这些信息。这对组织一个程序非常有用,因为这样可以把所有相关的信息存储在一个地方,而不是存储在分散的多个变量中。

在设计一个结构时,开发一个与之配套的函数包通常是很有用的。例如,写一个以结构(或其地址)为参数的显示函数,比起每次要显示结构内容时写一堆printf()语句要强得多。因为所有信息都在结构中,所以只需要一个参数。如果把信息放到分散的变量里,则每个独立的部分都需要一个单独的参数。而且,如果给结构添加一个成员,只需重写函数,而不用改变函数调用。这在您需要修改结构的设计时是很方便的。

广告:个人专属 VPN,独立 IP,无限流量,多机房切换,还可以屏蔽广告和恶意软件,每月最低仅 5 美元

联合的声明看起来很像结构的声明。然而,联合的成员共享同一个存储空间,并且在一个时间只有一个成员可以存在于联合中。实质上,联合允许您创建用来保存一个类型不定的值的变量。

enum工具提供了定义符号常量的一种方法,typedef工具提供了为基本类型或派生类型创建新标识符的一种方法。指向函数的指针提供了告诉函数应该使用哪个函数的一种方法。