0

我是批量游戏编程的新手,我试图使一个变量等于另一个变量,如果操作员添加或减去另一个不是最大值的变量,它将不再添加或减去。我的批处理文件是:

if %num1% geq %num2% set /a num1=%num1% == %num2%
echo number: %num1%/%num2%
echo 1) add number
echo 2) quit
set /p input=
if %input% == 1 set /a num1=%num1%+1
if %input% == 2 exit

如果有类似的问题,请对我好。

4

2 回答 2

1

这是一个可能有帮助的示例:

@echo off
set max=50
set num=20
:loop
set /p "input=Enter number to add - you now have %num% units: "
set /a t=num + input
if %t% LEQ %max% (
      set num=%t%
  ) else (
      echo That's too high - %max% is the limit!
)
echo %num%
goto :loop
于 2013-10-06T05:13:11.050 回答
-1

不确定批处理,除非您指的是批处理的 shell 程序或 DOS 模式 shell 程序,但是您可以使用带有 C++ 类的原子变量并重载 =、+ 和 - 运算符以使用测试和设置,确保正确分配它,然后,您可以创建迷你程序来执行您可以使用程序中的 eval 或系统功能或使用 %fct% 或fct

于 2013-10-06T04:42:31.253 回答