[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
我觉得官方解释不能说错,只是在批处理有些特别的地方罢了。开启变量延迟就可以了,说明它解释还是对的。

TOP

预处理机制而已。

TOP

set /a x=a,a=b,b=x
可以交换a和b的位置,你怎么看?

TOP

谢谢 分享     

TOP

QAQ LZ不要误导别人啊,吓得差点误解了我习惯了3年的知识
这是因为变量延迟的问题,这和所谓的%%没有关系
你只需要加一个setlocal enabledelayedexpansion,把%换成!就好了,QAQ

TOP

这是延迟变量的问题,而不是什么教程乱讲。若考虑延迟变量应该写为set /a a+=1等价于set /a a=!a!+1,如果没有开启本地自动化操作则是错误的语句。所以set /a a=%a%+=1并没有错误。

TOP

回复 11# applba


    大侠说到点子上了。细心点发现
我就是我,不一样的烟火!

TOP

回复 1# defanive


    这个复合运算符隐含延迟变量的功能。就像java中复合运算符隐式一个强制类型转换
我就是我,不一样的烟火!

TOP

返回列表