为了更好地理解,我们始终建议您学习下面列出的C语言编程基础主题
在这个C程序中,我们必须阐述联合的概念。为此,我们必须了解一些关于联合的知识。
我们都知道,联合是C语言中一种特殊的数据类型,它在同一内存位置存储不同的数据类型。我们可以定义一个有许多成员的联合,但在给定时间只有一个成员可以包含值。在程序中,联合的定义方式与我们在C程序中定义结构体的方式相同。要访问联合的任何成员,需要使用成员访问运算符。联合代表一种新的数据类型,它在程序中具有多个成员。
结构体和联合之间的主要区别是,对于联合,我们一次只能访问一个成员,但在结构体的情况下,我们可以随时访问其所有成员。联合的大小几乎对应于其最大成员的大小。
联合声明的语法如下:
union union_name
{
type element 1;
type element 2;
……………..
type element n;
};
在这个C程序中,我们必须声明联合变量number,它有成员n1和n2。然后我们声明一个类型为number的变量x。接着我们读取n1的值,并使用printf函数显示n1的值。然后我们读取n2的值,并使用printf函数显示它。
步骤1:包含头文件以使用C语言程序中的内置函数。
步骤2: 声明联合变量number,其成员为n1和n2。
步骤3: 将x声明为number类型的变量。
步骤4: 将n1的值读取到变量x.n1中。
步骤5: 使用printf函数显示n1的值为x.n1。
步骤6: 将n2的值读取到变量x.n2中。
步骤7: 使用printf函数显示n2的值。
#include <stdio.h>
void main() {
union number {
int n1;
float n2;
};
union number x;
printf("Enter the value of n1: ");
scanf("%d", & x.n1);
printf("Value of n1 =%d", x.n1);
printf("\nEnter the value of n2: ");
scanf("%d", & x.n2);
printf("Value of n2 = %d\n", x.n2);
} /* End of main() */
Enter the value of n1: 2 Value of n1 =2 Enter the value of n2: 3 Value of n2 = 0