c的32位关键字剩下几个,先搞定联合体再说!!!
别关我的贴啊!!!我不经常发贴的,#include
int main(void)
{
long int c = 0;
union try {
int a;
int b;
};
union try test;
test.a = 10;
test.b = 20;
printf("test.a = %d\n",test.a);
printf("test.b = %d\n",test.b);
c = test.a;
printf("c = %d\n",c);
c = test.b;
printf("c = %d",c);
return 0;
}
输出:
test.a = 20
test.b = 20
test.a = 20
test.b = 20
刚刚听了版主的,理解了一点关于联合体的问题,:
版主:这个结果正是证明联合体与结构体的不同,test.a,test.b实际上使用的同一空间。
我还有一些问题:
如果联合体的成员都是使用同一个的内存空间(同一变量),那么定义一个成员,和定义多个联合体成员有分别吗???
既然都只能要一个成员还定义那么多其他的成员有意义吗???