<dl id="opymh"></dl>

<div id="opymh"></div>
      <div id="opymh"><tr id="opymh"></tr></div>

        <em id="opymh"><ins id="opymh"><mark id="opymh"></mark></ins></em><sup id="opymh"><menu id="opymh"></menu></sup>

        <em id="opymh"></em>

        <em id="opymh"><ol id="opymh"></ol></em>

              频道栏目
              首页 > 程序开发 > 软件开发 > C语言 > 正文
              C语言£º写一个宏可以将一个数字的奇数位和偶数位交换
              2018-07-24 15:58:40         来源£ºETalien_的博客  
              收藏   我要投稿

              此题的解决思路为£º将一个数字的奇数位提取出来并向左移动1位£¬偶数位提取出来并向右移动1位£¬将奇数位与偶数位移位后的值相加即可以实现¡£

              例如£º11----->1011

              奇数位提取出来为0001---->向左移动1位为0010

              偶数位提取出来为1010---->向右移动1位为0101

              两个移位后的值相加为0111---->输出的值为7

              这样就完成了奇数位和偶数位交换¡£

              具体代码如下£º

              需要注意的是宏的使用要尽可能?#23454;?#30340;多使用括号£¬以防操作符的优先级影响结果¡£

              #include 
              #include 
              #define SWAP(X) ((((X)&0x55555555)<<1)+(((X)&0xaaaaaaaa)>>1))
                //提取奇数位向左移动1位//提取偶数位向右移动1位
              int main()
              {
              	int n = 11;
              	int ret = SWAP(n);
              	printf("ret = %d\n", ret);
              	system("pause");
              	return 0;
              }
              点击复制链接 与好友分享!回本站首页
              上一篇£ºC#之一次性清空textbox¡¢combobox中所有的内容
              下一篇£º最后一页
              相关文章
              图文推荐
              点击排行

              关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

              版权所有: 红黑联盟--致力于做实用的IT技术学习网站

              ¼«ËÙ·ÉͧºÃ¼Ù
              <dl id="opymh"></dl>

              <div id="opymh"></div>
                  <div id="opymh"><tr id="opymh"></tr></div>

                    <em id="opymh"><ins id="opymh"><mark id="opymh"></mark></ins></em><sup id="opymh"><menu id="opymh"></menu></sup>

                    <em id="opymh"></em>

                    <em id="opymh"><ol id="opymh"></ol></em>

                          <dl id="opymh"></dl>

                          <div id="opymh"></div>
                              <div id="opymh"><tr id="opymh"></tr></div>

                                <em id="opymh"><ins id="opymh"><mark id="opymh"></mark></ins></em><sup id="opymh"><menu id="opymh"></menu></sup>

                                <em id="opymh"></em>

                                <em id="opymh"><ol id="opymh"></ol></em>