---------------------------------------------
-- 时间:2018-12-17
-- 创建人:Ruo_Xiao
-- 邮箱:xclsoftware@163.com
---------------------------------------------

一、借助第三个变量实现

栗子:

tmp    =     A;
A      =     B;
B      =     tmp;

二、利用加减实现

1、栗子:

A = A + B;
B = A - B;  //B相当于之前的A
A = A - B;  //A相当于之前的B

2、容易造成变量A超过其上限。

三、利用按位异或实现

1、异或的原理:相同为0,不同为1。

2、异或的两个重要属性:

(1)异或自身为0。

(2)异或运算符合交换律,即:A^B = B^A。

3、栗子

A = A ^ B;
B = A ^ B;  //B' = A ^ B ^ B = A;
A = A ^ B;  //A  = A ^ B ^ B'= A ^ B ^ A = B ^ A ^ A = B;

(SAW:Game Over!)

C\C++ 交换两个变量的方法相关推荐

  1. 在java中的交换方法有哪些_java中交换两个变量的值有哪几种方法,交换两个变量a和b的值...

    java中交换两个变量的值有哪几种方法在Java中,有哪些方法可以交换两个变量的值, 方法: 1.定义临时变量 2.没有必要定义临时变量 3.使用位运算符 (学习视频分享:java课程) 代码示例: ...

  2. php比较两个变量的值_总结PHP不用第三个变量交换两个变量的值的几种方法

    "PHP不用第三个变量交换两个变量的值"这个题看到过好多次了,看来面试确实喜欢考这道题.今天,对于这个题目,我自己总结了几种方法,可能不全,大家来互相补充. 有些仅适用于字符串,方 ...

  3. python交换两个变量的值_python交换两个变量的值方法

    python交换两个变量的值方法 大部分语言,例如c语言,交换两个变量的值需要使用中间变量. 例如交换a,b 伪代码: tmp = a a = b b = tmp python里面可以实现无临时变量的 ...

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

    相关阅读 [小家java]java5新特性(简述十大新特性) 重要一跃 [小家java]java6新特性(简述十大新特性) 鸡肋升级 [小家java]java7新特性(简述八大新特性) 不温不火 [小 ...

  5. 交换两个变量的值的4种方法,你了解了吗?

    目录 一.引入第三变量 二.不引入第三变量 1.a = a + b; b = a - b; a = a - b; 2.利用异或 3.巧妙运用优先级 总结: 在我们的开发中,或者在我们平时的练习中,常常 ...

  6. python怎么交换两个变量的值_python交换两个变量的值方法

    大部分语言,例如c语言,交换两个变量的值需要使用中间变量. 例如交换a,b 伪代码: tmp = a a = b b = tmp python里面可以实现无临时变量的交换 (a,b) = (b,a) ...

  7. 交换两个变量的值?两种方法

    ** 交换两个变量的值,两种方式 ①第一种,定义临时变量,用来存放第一个变量的值,再将第二个变量的值赋值给第一个变量,临时变量里面的值赋值给第二个变量,就换过来啦. ②第二种方法,利用两个数之和省去了 ...

  8. 初学者交换两个变量的值的三种方法

    一.通过简单运算交换两个变量的值 #include<stdio.h> int main() {int i = 5, j = 6;i = i + j;j = i - j;i = i - j; ...

  9. C语言宏定义实现交换两个变量方法汇总

    小硕第三个年头了,最近小编忙着各种跑宣讲会,参加各种面试,搞的遍体鳞伤.今天难得静下心来,先总结下有关"交换两个变量的宏定义实现"的三种方式,相信没思考过的朋友们第一次遇到这种问题 ...

最新文章

  1. pstree进程管理
  2. 性能优化之Java多线程批量拆分List导入数据库
  3. 【RocketMQ工作原理】订阅关系的一致性
  4. N-MOS的G-S电容随着DS电压的变化关系
  5. 四旋翼姿态解算——梯度下降法理论推导
  6. 【paddlepaddle速成】paddlepaddle图像分类从模型自定义到测试
  7. 【日常小记】linux中强大且常用命令:find、grep
  8. nginx日志配置指令详解
  9. The data replication requires the processing of single BDoc instances
  10. 【Qt串口调试助手】1.6 - QTimer定时自动发送
  11. 物联网能为企业做点什么?
  12. Logstash匹配日志日期
  13. 伪静态 全站php 跳到html,IIS下万能301跳转方法:URL伪静态重写+PHP301
  14. 数据源、元数据、数据元
  15. 2022 年面试工具篇 Jmeter 接口面试题及答案
  16. echarts全解析及其用法详解
  17. 我家淇淇-学习穿衣服
  18. 字典(python学习)
  19. 【开发日常】【Makefile】编译时如何将警告(warning)视为错误(error)?
  20. Python使用标准库zipfile+re提取docx文档中超链接文本和链接地址

热门文章

  1. HDU1164 Eddy's research I【素因子分解】
  2. 2020年_Jsp Jstl 学习笔记
  3. linux deepin安装virtualbox 6.1命令
  4. 使用Maven 实现打包生成一个可执行jar包:附详细配置解释说明
  5. Scala模拟Spark分布式计算流程示例代码
  6. K8S常见错误、原因及处理方法
  7. Scala if...else案例
  8. Python Django related_name属性使用示例
  9. 简单讲解一下负载均衡、反向代理模式的优点、缺点
  10. 缓存行cache line概述