C语言reverse二进制位的实现

   2024-10-08 4790
核心提示:#include stdio.hunsigned int reverseBits(unsigned int num) {unsigned int count = sizeof(num) * 8 - 1;unsigned int revers

#include <stdio.h>unsigned int reverseBits(unsigned int num) {    unsigned int count = sizeof(num) * 8 - 1;    unsigned int reverse_num = num;        num >>= 1;    while (num) {        reverse_num <<= 1;        reverse_num |= num & 1;        num >>= 1;        count--;    }    reverse_num <<= count;    return reverse_num;}int main() {    unsigned int num = 10; // 00000000000000000000000000001010    unsigned int reversed_num = reverseBits(num);    printf("Original number: %u\n", num);    printf("Reversed number: %u\n", reversed_num);    return 0;}

这段代码实现了一个函数reverseBits,用于将一个无符号整数中的二进制位逆序。在main函数中,我们定义了一个初始值为10的无符号整数,将其二进制位翻转后输出。

 
举报打赏
 
更多>同类维修大全
推荐图文
推荐维修大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号