【C語言位運算的應用】如何按bit位翻轉一個無符號整型

    其實現思路以下:
ide

    將目標數值進行末尾比特位摘取,將所摘取的bit位放到一個相同類型的末尾,目標數值bit位右移,相同類型bit位左移。
測試

    C語言的位運算符:
blog


wKiom1bZndLRecyCAABFU9abgvw125.png    實現代碼以下:get

#include <stdio.h>//按位翻轉一個無符號×××
unsigned int reverse_bit(unsigned int value)
{
	unsigned int num = 0;
	int i = 0;
	for (i = 1; i < 32; i++)
	{
		num += value & 1;
		num <<= 1;
		value >>= 1;
	}
	return num;
}

    測試用例以下:
it

int main()
{
	unsigned int num = 25;
	printf("%u", reverse_bit(num));
	system("pause");
	return 0;
}

如    有不足之處,但願指正。io

相關文章
相關標籤/搜索