专栏首页moon聊技术不使用第三个变量,怎么交换两个变量的值?

不使用第三个变量,怎么交换两个变量的值?


才华横溢+玉树临风 VS 腰缠万贯

大家好,我是1,我长的非常帅又很有才华

我有一个好兄弟,它叫8,这家伙豪气的不得了,是一个富二代

但是由于我的才华和英俊的外表,他还是认我做了大哥

我们都很羡慕对方,我想过有钱的日子,但是他想变成我这样有才华且帅的男人

总的来说,我想变成他,他想变成我

于是,我们开始翻阅各种武学宝典,功夫不负有心人!终于让我找到了!---->偷天换日!!

《偷天换日》第一重异或大法

这本武功秘籍中居然有一式名曰异或大法,可使两人互换!!!!

激动的我立马就翻阅起来!

以下就是秘籍介绍了


先和大家简单普及下小知识,计算机的世界是二进制的,只有01这两个数字

  • 1在计算机中可以用1标识
  • 5在计算机的世界里,其实是101

异或是什么?

就是相同为0,不同为1

我们举个例子,如图

1001 和 1100 的异或结果为 0101

看到这里,恭喜你!异或大法你已经有所小成了!

《偷天换日》第二重双修大法

双修????

咳咳咳,不要乱想,是需要两人同时修炼,要配合!把脑子里的脏东西踢掉!

但是双修大法需要一个人牺牲一个

我来吧!!!怎么能让兄弟吃亏!

第二重??只需要对兄弟使出第一式就好了,这么简单吗?

于是乎变我成了变态???

《偷天换日》第三重偷天换日

书中简介:你不会白牺牲的!现在需要第二个人来拯救你了!

快!对它使用异或大法!

兄弟:我变了我变了!!!!!我变成帅比了!!!哈哈哈哈!!!!!

我上去就是给他一拳:我还人不人鬼不鬼的,你笑个P,快看看怎么办!

兄弟露出了姨母笑:我看下我看下,哈哈哈哈... 书中说到,你对我再用下异或大法就好了!来吧!!!

我二话不说,又是一招异或大法打了过去

我哭了:我变成土豪了,哈哈哈哈哈哈..

恭喜你,神功大成!

代码演示

小说看完了,代码也得码一下

   int handsome = 1;
   int rich = 5;
   handsome = handsome ^ rich;
   rich = handsome ^ rich;
   handsome = rich ^ handsome;

本文分享自微信公众号 - moon聊技术(onetraveller_llxz),作者:moon聊技术

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-06-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • JavaScript两个变量交换值(不使用临时变量)

    本文主要描述,如何不使用中间值,将两个变量的值进行交换。  前三种只适用于number类型的数值交换,第四和第五种适合其他类型。

    我是leon
  • js不使用第三方变量交换两个变量的方法

      除了第一种是运算顺序、最后一种是解构赋值,其它的方法主要的思路都是:先产生一个与这两个变量有关的一个新的值,然后重新计算。

    用户1149564
  • 不使用第三方变量的情况下交换两个数值

    是阿超
  • JS数组&两值交换不使用第三变量

    版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。

    奋飛
  • Python交换两个变量的值

    首先,来回顾一下C语言中交换两个数字的三种方法,最简单的方式也需要一个中间人来暂存其中某一个值。但是在python下,这个操作会异常的简单。

    zy010101
  • 实现两个变量的互换(不借助第三个变量)

    变量的互换常见于数组排序算法中,常见的做法是创建第三个变量进行互换,但是创建第三个变量仅作为过渡变量,这样不仅消耗系统内存,还使效率低下。这里提供一种不借助第三...

    itlemon
  • 编写程序交换两个数字而不使用第三个变量?

    用户4645519
  • 不用临时变量,交换二个整型变量的值

    早上出门前看时间还早,反正出去等公交也是等,就捞起垫桌脚的一本书(C程序设计),随便翻了翻,看到下面这个方法,记录下来,说不定哪天就用到了: using Sys...

    菩提树下的杨过
  • 不借助变量交换两个数

    我们在平时写代码的过程之中,竟然会有交换两个变量值的需求。然而我们大多数还是会采用借助额外变量的方式,因为这种方式不仅简单,容易理解,可读性高, 更重要的是适用...

    lucifer210
  • 你会不借助变量交换两个数么?

    平时写代码的过程之中,经常会有交换两个变量值的需求。然而我们大多数还是会采用借助额外变量的方式,因为这种方式不仅简单,容易理解,可读性高, 更重要的是适用范围广...

    lucifer210
  • 面试官在“逗”你系列:不借助第三变量交换两个变量值的方案你有几种?

    在我们学习编程之初,就学习过变量的赋值操作,同时也学习了将一个变量的值赋值给另外一个变量。对于交换两个变量的值,很多童鞋都有解决方案。然鹅,对于面试官提出的不借...

    胡哥有话说
  • Python中有几种办法交换两个变量的值?

    小猿会从最基础的面试题开始,每天一题。如果参考答案不够好,或者有错误的话,麻烦大家可以在留言区给出自己的意见和讨论,大家是要一起学习的 。

    程序IT圈
  • Python中有几种办法交换两个变量的值?

    小猿会从最基础的面试题开始,每天一题。如果参考答案不够好,或者有错误的话,麻烦大家可以在留言区给出自己的意见和讨论,大家是要一起学习的 。

    用户1564362
  • 不使用第3个变量,实现两个数的对调

    Youth is a beautiful but also a time to go, it is the beginning of all the brigh...

    小Bob来啦
  • swap()交换两个变量的方法汇总

    sr
  • C语言经典算法之交换两个变量的值

    在C语言中,有一个经典的算法:交换两个变量的值。现在有两个数a和b,需要将a的值给b,b的值给a。下面我来分享几个方法完成这个算法吧!

    小顺ai编程
  • 不用临时的变量 优雅、高效的交换两个数方法

    到目前为止,我们的答题思路是没错的,就是寻找另外一种数据存储的模式,用一个变量保存两条信息的集合,我们仍然需要采用这种模式解决这个问题,但原先的简单相加的模式是...

    sunsky
  • 【小家java】交换两个变量数值的方法(四种方法)

    本文主要介绍Java中可以交换两个变量的值的四种方法,可能开发者们在平时的coding中都有遇到过类似的情况,咋一看并不难。但本博文其实就是开开眼界而已,自己玩...

    YourBatman
  • 不用中间变量交换两个数,各种骚操作,一次玩个够

    近来看见一些群里面多次出现讨论不用中间变量交换两个数怎么做。虽然这是很古老的问题,大家懂的也懂。但实际上,方法会有很多种,我们一起来看看

    lhyt

扫码关注云+社区

领取腾讯云代金券