批处理:不用中间变量,交换两个变量值
Posted siwuxie095
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批处理:不用中间变量,交换两个变量值相关的知识,希望对你有一定的参考价值。
-------siwuxie095
法一:直接交换(不限)
@echo off set var1=abc set var2=123 echo 交换前 :var1=%var1% var2=%var2% set var1=%var2% & set var2=%var1% echo 交换后 :var1=%var1% var2=%var2% pause |
sublime中:
运行一览:
注意:如果 set var1=%var2% & set var2=%var1%
分开成两段写,就达不到交换的效果了
法二:异或---位运算(仅限数字)
@echo off set x=10 set y=1 echo 交换前:x=%x% y=%y% set /a x=x^^y set /a y=x^^y set /a x=x^^y echo 交换后:x=%x% y=%y% pause |
sublime中:
运行一览:
法三:加减法---数学原理(仅限数字)
@echo off set var1=123 set var2=456 echo 交换前:var1=%var1% var2=%var2% set /a var1=%var1%+%var2% set /a var2=%var1%-%var2% set /a var1=%var1%-%var2% echo 交换后:var1=%var1% var2=%var2% pause |
sublime中:
运行一览:
【made by siwuxie095】
以上是关于批处理:不用中间变量,交换两个变量值的主要内容,如果未能解决你的问题,请参考以下文章