union在c语言代码示例
时间: 2023-10-11 12:13:14 浏览: 104
C语言中联合体union的实例详解
当在C语言中使用`union`关键字时,可以创建一种特殊的数据结构,它允许在相同的内存空间中存储不同类型的数据。下面是一个简单的示例:
```c
#include <stdio.h>
// 定义一个union
union Data {
int i;
float f;
char str[20];
};
int main() {
union Data data;
printf("Memory size occupied by data : %d\n", sizeof(data));
data.i = 10;
printf("data.i : %d\n", data.i);
data.f = 220.5;
printf("data.f : %f\n", data.f);
strcpy(data.str, "C Programming");
printf("data.str : %s\n", data.str);
return 0;
}
```
在上面的示例中,我们定义了一个`union Data`,它包含了一个整数`i`、一个浮点数`f`和一个字符数组`str`。在`main()`函数中,我们创建了一个名为`data`的`union Data`对象,并使用不同的数据类型分别对其进行赋值和访问。请注意,由于`union`共享相同的内存空间,因此在给其中一个成员赋值后,其他成员的值将被覆盖。
输出结果如下:
```
Memory size occupied by data : 20
data.i : 10
data.f : 220.500000
data.str : C Programming
```
这个示例展示了如何使用`union`在C语言中存储不同类型的数据。
阅读全文