CV_INLINE void* cvAlignPtr( const void* ptr, int align=32 )
{
assert( (align & (align-1)) == 0 ); //确保align是2的幂
return (void*)( ((size_t)ptr + align - 1) & ~(size_t)(align-1) ); //把指针调整到align的整数倍地址 (把后5位清0)
}
比如ptr=0x00FE3A54, align=32:
0x00FE3A54+0x00000020-1=0x00FE3A73 =0000 0000 1111 1110 0011 1010 0111 0011