【发布时间】:2015-10-20 23:58:51
【问题描述】:
假设我有一个结构:
struct guitar{
long guitarID;
short brand:3;
short strings: 6;
short price;
}x[5][5]; //Thanks chux
如果 x 的地址是 0xaaa 并且内存以 4 的倍数对齐,那么 x[1] 处的地址会是什么?
我想知道的另一件事是品牌和字符串之间的数字范围现在它们受到位域的影响?
【问题讨论】:
-
... short price; };x[5][5]是个问题。... short price; } x[5][5];更有意义。 -
“内存以 4 的倍数对齐”和“x 是 0xaaa”是矛盾的,因为
0xaaa不是 4 的倍数。因此不会发生以 4 的倍数对齐或0xaaa是小说。 -
先做一些实验怎么样?