字节对齐算法

 字节对齐是在分配内存时需要考虑的问题,两个小算法:

(1)最容易想到的算法:

unsigned int calc_align(unsigned int n,unsigned align)
{
    if ( n / align * align == n)
            return n;

        return  (n / align + 1) * align;

}

(2)更好的算法:

unsigned int calc_align(unsigned int n,unsigned align)
{
    return ((n + align - 1) & (~(align - 1)));
}

posted @ 2009-05-14 09:26  YY哥  阅读(4032)  评论(0编辑  收藏  举报