Batch file 如何在批处理中向变量添加数字

Batch file 如何在批处理中向变量添加数字,batch-file,Batch File,嘿,我在分批做我的一个项目。是的,我知道它不好,但我还是在用它。当我遇到这个问题时,我正试图建立一个更新的库存系统。我试图将一组数字E.X 1添加到一个变量中,如下所示: @echo off set var=0 echo I will add these numbers from var+1 set /a var=%var%+1 pause echo var pause 问题出在哪里?要显示变量var的值,您需要 echo %var% 要显示变量var的值,需要 echo %var% 有一

嘿,我在分批做我的一个项目。是的,我知道它不好,但我还是在用它。当我遇到这个问题时,我正试图建立一个更新的库存系统。我试图将一组数字E.X 1添加到一个变量中,如下所示:

@echo off
set var=0
echo I will add these numbers from var+1
set /a var=%var%+1
pause
echo var
pause
问题出在哪里?

要显示变量
var
的值,您需要

echo %var%
要显示变量
var
的值,需要

echo %var%

有一种更简单的形式可以添加到
Set/a var+=1
的var中,而且Set/a不需要用百分号括起var(除了!和延迟的表达式)我建议阅读
help set
set/?
不会提及您所说的
set/a
的另一种变体。谢谢您的帮助。我的程序开始工作了!谢谢again@SomethingDark引用自Set/<代码>表达式中的任何非数字字符串都被视为环境变量名称,其值在使用之前会转换为数字。如果指定了环境变量名称,但未在当前环境中定义,则使用零值。这使您可以对环境变量值进行算术运算,而不必键入所有这些%符号来获取它们的值。有一种更简单的形式可以添加到
Set/a var+=1
的变量中,而且Set/a不需要用%符号括起变量(除了!和延迟的表达式)我建议阅读
help set
set/?
不会提及您所说的
set/a
的另一种变体。谢谢您的帮助。我的程序开始工作了!谢谢again@SomethingDark引用自Set/<代码>表达式中的任何非数字字符串都被视为环境变量名称,其值在使用之前会转换为数字。如果指定了环境变量名称,但未在当前环境中定义,则使用零值。这允许您对环境变量值进行算术运算,而不必键入所有这些%符号来获取它们的值。