![img](https://img
如图所示,我在union数组gpr[2]下面定义了
int变量a,a与gpr[2]被包括在一个union里。经过我的测试,a是与gpr[0]相联合的,即有相同的首地址,占有相同的地址空间,gpr[0].x与gpr[0].y会影响a的值。
但a不与gpr[1]联合,我想再定义一个int型变量b与gpr[1]相联合,如何做到呢?
![img](https://img
在外面定义一个int指针,指向你要联合的地址
int * const b=(int *)(&(state.a)+sizeof(int));
此时修改*b就能影响到gpr[1]了。
你若要修改
gpr[1].x值 ,只需修改 *b就行,,
你若要修改
gpr[1].y值 ,也只需修改 *b就行,,