代码改变世界

字节对齐

2015-03-26 15:11  sylar_liang  阅读(147)  评论(0编辑  收藏  举报
 
#define APR_ALIGN(size, boundary) /
    (((size) + ((boundary) - 1)) & ~((boundary) - 1))
该宏目的为: 计算出最接近size的boundary的整数倍的整数.
如:
APR_AGLIN(7,4) = 8. 即 (7+3) & (~3) = 8;
APR_AGLIN(21,8) = 24
APR_AGLIN(21,16) = 32
 
APR_ALIGN(size,8)。这种处理方式称之为“8对齐”或者“4K对齐”.