理论教育 共用体变量引用方法-C语言程序设计教程

共用体变量引用方法-C语言程序设计教程

时间:2023-11-21 理论教育 版权反馈
【摘要】:同结构体类似,共用体变量要先定义后引用。C语言规定引用共用体成员有两种方式:用“.”成员运算符方式和指针方式。例10.11 共用体变量的输入和输出。后赋的值会重写共用体所在的存储单元。例10.12 如何存储学校入员的基本信息。编写程序:创建一个名为“eg10_12.c”的新文件,在编辑窗口中输入下面的程序代码。例如,No.与name之间空一个tab键。

共用体变量引用方法-C语言程序设计教程

同结构体类似,共用体变量要先定义后引用。不能引用共用体变量,只能引用共用体变量中的成员。

C语言规定引用共用体成员有两种方式:用“.”成员运算符方式和指针方式。

用“.”成员运算符方式引用共用体变量中成员的格式为:

通过共用体指针引用共用体成员的格式为:

例如:

那么,变量a中各成员的引用形式为a.classNum和a.office。通过指针b引用各成员的形式为b->classNum和b->office 。

例10.11 共用体变量的输入和输出。

编写程序:

创建一个名为“eg10_11.c”的新文件,在编辑窗口中输入下面的程序代码。

运行结果:

程序说明:(www.daowen.com)

先给office成员赋值为English,共用体地址中的值是字符串“English”。接着给class-Num成员赋值为49,共用体地址中的值是49。后赋的值会重写共用体所在的存储单元。输出a.classNum的值是49;输出a.office的值是1,而不是字符串“English”。因为在共用体单元中,按整型数据形式存放了49,要按“%s”格式输出a.office,系统就到共用的存储单元去读数据,将存储单元中的内容按存储数据的规则解释。由于字符“1”的ASCII码值为49,因此,输出字符“1”。

这个例题说明:共用体变量不是同时存放多个成员的值,而是仅能存放一个成员的值。

例10.12 如何存储学校入员的基本信息。

编写程序:

创建一个名为“eg10_12.c”的新文件,在编辑窗口中输入下面的程序代码。

运行结果:

程序说明:

结构体struct person中嵌套了共用体union department, dep是一个共用体union department类型的变量,per是结构体struct person类型的数组。在共用体union department中,office成员是一个字符数组。

“ printf ( " No. name age occupation department \ n" ) ;”语句中,双引号("")内的字符串之间用tab键分割。例如,No.与name之间空一个tab键。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈