共用体
共用体和结构体不同
共用体是数个变量共用一个地址,如下列程序显示,共用体里变量的地址相同,所以他们变量不能同时使用,一旦同时使用,会出现相互覆盖的情况发生,导致错误
#include <stdio.h>
#include <string.h>
union Test
{
int i;
double pi;
char str[6];
};
int main(void)
{
union Test test;
test.i = 520;
test.pi = 3.14;
strcpy(test.str, "FishC");
printf("addr of test.i :%p\n",&test.i);
printf("addr of test.pi :%p\n",&test.pi);
printf("addr of test.str :%p\n",&test.str);
printf("addr of test.i :%d\n",test.i);
printf("addr of test.pi :%.2f\n",test.pi);
return 0;
}