C++bit置反

#include <stdio.h>

 

int bit_reverse(int num)                                 

{

    int c;

    int n = 0;

    int index = 1;

    for (int i = 1; i<=32; i++)

    {

        c = num&index;

        n = n|c;

        num = num>>1;

        if (i<32)

            n = n<<1;

    }

    return n;

}

 

int main(int argc, char** argv)

{

    unsigned int rnum,number=0x10101010;

    rnum = bit_reverse(number);

 

    printf("The original number is: %0x\nThe reverse number is: %0x\n",number,rnum);

    return 0;

}

本文使用Blog_Backup未注册版本导出,请到soft.pt42.com注册。

posted @ 2011-03-14 18:52  莫忆往西  阅读(295)  评论(0)    收藏  举报