关于结构体内嵌在共用体中的问题

#include<stdio.h> #include<stdlib.h> int main() { union example { struct { int x; int y; }in; int a; int b; }e; e.a=2; e.b=1; e.in.x=e.b+e.a; e.in.y=e.b*e.a; printf("%d\n",e.in.y); return 0; }结构体内嵌在共用体中,四个变量是不是任意一个值就把其他的值覆盖了?还是说结构体中的变量值不会被覆盖?
请帮我分析一下这段代码,谢谢