struct X {
char a;
char b;
int c;
};
在上面的结构中,成员b
存储在奇数地址中。我在linux / x86环境中检查了这个
许多网页都谈到处理器无法访问奇数地址。如果确实如此,那么成员a
和b
之间应该填充1个字节,这样b
就会存储在偶数地址中。
我错过了什么?
答案 0 :(得分:1)
在奇数地址处获取字符总是可以的。但是,奇数地址处的int可能会导致问题。但是,如果需要,编译器将自动在struct字段之间添加填充。我假设C / C ++是你的语言。