1. 程式人生 > >把一個無符號整數對應的十六進位制的前八位和末八位交換,中間的十六位也同理互換

把一個無符號整數對應的十六進位制的前八位和末八位交換,中間的十六位也同理互換

例如0xfabcde12,變換後為:12debcfa

用位運算實現,再控制輸出;

程式碼如下:

#include <stdio.h>

using namespace std;

int main()
{
    unsigned int n;
    while(scanf("%d",&n)!=EOF){

        printf("%.8x\n",n);
        printf("%.2x",(n<<24)>>24);
        printf("%.2x",(n<<16)>>24);
        printf
("%.2x",(n<<8)>>24); printf("%.2x",n>>24); } return 0; }