我对联盟的内存地址变更感到有点困惑。
typedef union {
char state[x];
char encode[4];
int index;
} Location;
我们在编写代码时使用了几个对齐规则,例如:
int 4 bit alignment
double 4 bit for linux
char * 4 bit for linux
“联盟将如何协调” 对于那些条件; 如果
x < 4 ?
x = 4 ?
x > 4 ?
平台linux
程序集x86 64位
注意:如果您有更好的意见,请在改善该问题时随意
答案 0 :(得分:1)
我对你的实际问题有点疑惑: - )
但是,如果你问这个联盟将如何协调一致,那么工会必须遵循两个相关的规则。
换句话说,int
可能是协调方面的驱动力
如果单个x
的对齐为1,则char
的值与此无关。这不是整个数组需要对齐,只是它的每个元素。