当前位置: 首页 > news >正文

C语言 ——— 写一个宏,将一个整数的二进制位的奇数位和偶数位交换

目录

题目要求

代码实现


题目要求

写一个宏,将一个整数的二进制位的奇数位和偶数位交换

举例说明:

输入:10 

10 的二进制为 1010 ,奇数位和偶数位交换后得 0101  ,也就是 5

输出:5


代码实现

代码演示:

#define  SWAP(n)  (n=(((n&0xaaaaaaaa)>>1) + ((n&0x55555555)<<1)))int main()
{int input = 0;scanf("%d", &input);printf("%d\n", SWAP(input));return 0;
}

代码验证:


http://www.mrgr.cn/news/28272.html

相关文章:

  • 发布rust crate
  • c++ 宏函数 inline 以及区别
  • C++清除所有输出【DEV-C++】所有编辑器通用 | 算法基础NO.1
  • 深入理解接口测试:实用指南与最佳实践5.0(五)
  • ⾃动化运维利器 Ansible-变量
  • 常见混淆概念理清:从搜索引擎和检索引擎的区别说起
  • transformer模型进行英译汉,汉译英
  • Qt ORM模块使用说明
  • 95-java synchronized和reentrantlock区别
  • 深入理解指针(三)
  • FLORR.IO 绿~粉(我是专业的!)
  • java项目常用的工具类
  • 数据技术革命来袭!从仓库到飞轮,企业数字化的终极进化!
  • 进阶SpringBoot之异步任务、邮件任务和定时执行任务
  • 使用NetworkManager代替wpa_supplicant管理网络
  • php部署到apach服务器上遇到的问题
  • 利士策分享,中秋佳节:月满人团圆的文化传承与演绎
  • Matlab生成prbs7的代码
  • 双指针算法专题(2)
  • 大模型参数高效微调技术原理综述(八)-MAM Adapter、UniPELT
  • 使用 SuperCraft AI 设计书橱模型的指南
  • 数据结构(2):LinkedList和链表[2]
  • python使用Pyvis库绘制B站评论互动网络结构图
  • Linux学习之路 - 线程概念补充理解
  • dll修复工具4DDiG DLL Fixer,解决电脑dll丢失问题
  • Multisim的使用