嘿,我在此C代码上有一个作业问题:
#include<stdio.h>
typedef union{
char var1;
int var2;
float var3;
}data;
int main()
{
data mydata;
mydata.var1 = 'B';
mydata.var2 = 12;
if(mydata.var1 == 'B')
mydata.var3 = 3.5;
else
mydata.var3 = 7.1;
printf("%.1f", mydata.var3);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
输出是7.1,我想知道是否有人可以解释为什么输出是7.1而不是3.5。
为您的帮助加油。