按位反转字符问题

来源:互联网 发布:阳泉网络广播电视台 编辑:程序博客网 时间:2024/05/21 16:21

方法一:(最最容易想到的办法)

unsignedchar ReverseBitsInChar00(unsignedchar Num)

{

    unsignedchar ret = 0;

    int i;

    for(i=0;i<8;i++)

    {

       ret <<= 1;

ret |= Num & 1;

       Num >>=  1;

    }

    return ret;

}

上面的程序通过每次取传入参数的最后一位( Num & 1),然后与要返回的结果相 “ 或 ”,把传入参数 Num 右移 1 位,要返回的结果左移一位,来实现数字反转的。