求一共用体方面程序输出结果

来源:百度知道 编辑:UC知道 时间:2024/06/09 03:01:05
……
union
{int a;
int b;
int c;}x;
x.a=1;x.b=2;x.c=x.a*x.b;
printf("%d",x.b,x.c
);……
我们教材上只说没有x.b被赋予值时x.a已经没有意义,没有告诉怎么处理!

看了一楼的提升后才发现的确是写漏掉了,太马虎,不好意思1

printf("%d",x.b,x.c
);……

什么意思,一个格式控制符却要2个变量,不过,无论是x.a,x.b,x.c结果都是4

确认回答就行了,答案已经告诉你了x.a,x.b,x.c结果都是4

你应该好好看看公用体是怎么个意思,实际上x.a,x.b,x.c都是公用一个存储单元,所以他们任意一个被赋值以后实际上都是对一个内存单元操作,所以都是一样的

就像3个指针同时指向一个数组元素一样