从A中抹去L-1的bit位。 比如A=5即00000101,L=4, L-1=3即 00000011,取反为 11111100 00000101 & 11111100 = 00000100 = 4
~((L) - 1))//L作为补码的原码
把地址 A 以 L 对齐。 L 必须是 4, 8, 16 之类的。
#define MY_ALIGN(A,L) (((A) + (L) - 1) & ~((L) - 1))
#define MY_ALIGN(A,L)
#(((A) + (L) - 1) & ~((L) - 1))
69,371
社区成员
243,082
社区内容
加载中
试试用AI创作助手写篇文章吧