#字长对齐的两种方法
方法1:
if (_n&(sizeof(long)-1))
_n += sizeof(long)-(_n&(sizeof(long)-1));
sizeof(long)=计算机字长
long的长度就是计算机字长
方法2:
_Bnd(X, bnd) (sizeof (X) + (bnd) & ~(bnd))
_Bnd(X, bnd)将类型或变量X的长度对齐到bnd+1字节的整数倍,例如_Bnd(char, 3U)的值是4,_Bnd(int, 3U)也是4。
原因:运算顺序+优先级比&高
先计算sizeof(X)+(bnd)
在将结果result&~(bnd)