2019年-c语言-第9章 共用和枚举-PPT精选文档
- 格式:ppt
- 大小:194.50 KB
- 文档页数:17
C语言基础教程联合变量的定义和赋值联合变量定义的形式与结构很相似,除关键字不同,其余几乎相同。
下面是一个联合模式的定义格式:union(联合名){(联合成员说明);};其中,union是联合的关键字。
(联合名)的命名方法同标识符,<联合成员说明》是将组成该联合的所有成员进行类型说明。
C:语言中,几乎所有类型都作为联合的成员,包含结构变量在内。
联合变量的定义如下所示:union<联合名)(联合变量名表);定义一个联合变量之前要先定义一种联合模式,任何一种联合变量都是属于某种联合模式的联合变量,这一点与结构变量很相似。
<联合变量名表)中,可以是一个联合变量名,也可是多个联合变量名,多个变量用逗号分隔。
这里的变量可以是一般联合变量,也可以是指向联合变量的指针。
例如:union date{Char c_data;int idata;float f._data;double d_data;};union data dl,d2.*pd.其中,anion是关键字,data是联合名,该联合有4个成员,分别作了说明dl和d2是两个联合变量,pd是一个指向联合变量的指针。
联合变量dl和d2都是具有联合名data的联合变量。
而联合变量指针pd也是指向具有data联合名的联合变量的指针。
与结构相类似,上述定义联合变量也可以写成如下形式:union data{char c_data;int i _data;float f_data;double d_data;}d1,d2,*pd;这里,也同样定义了联合变量dl和d2以及指向联合变量的指针pd。
联合变量的成员表示也与结构相似。
联合变量的成员用"·"表示,指向联合变量的指针用"一>"表示。
联合变量的赋值主要是给联合变量的各成员赋值。
例如,在上例中,对联合变量dl的几个成员赋值分别如下:dl.c_data='a';dl.i_data=15;dl.f_data=10.5;dl.b_data=87.63;对指向联合变量的指针pd赋值与给联合变量赋值相同,只是其成员表示不同。