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

时间:2021-7-4 作者:qvyue

微信公众号:moon聊技术
关注选择“ 星标 ”, 重磅干货,第一 时间送达!
[如果你觉得文章对你有帮助,欢迎关注,在看,点赞,转发]


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

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

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

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

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

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

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

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

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

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

以下就是秘籍介绍了


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

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

异或是什么?

就是相同为0,不同为1

我们举个例子,如图

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

1001 和 1100 的异或结果为 0101

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

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

双修????

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

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

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

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

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

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

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

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

快!对它使用异或大法!

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

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

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

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

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

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

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

恭喜你,神功大成!

代码演示

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

int handsome = 1; int rich = 5; handsome = handsome ^ rich; rich = handsome ^ rich; handsome = rich ^ handsome; 
不使用第三个变量,怎么交换两个变量的值?
image

看到这里,你神功大成了吗?

声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:qvyue@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。