小于或等于

And*_*nrx 36 batch-file

使用pause命令我发现错误在这段代码的第一行:

if %choice% == 1 if %energy% => %m2enc% set /a enemhp=%enemhp%-%m1hpd%+%earmr%
pause
set /a energy= %energy%-%m1enc%
set /a hp= %hp%-%edefense%
set /a defense= %defense%+1
goto battle
Run Code Online (Sandbox Code Playgroud)

所以,不要说我忘了设定的能量和m2enc,因为我只是在不同的部分做了,我也试过更换%energy%10m2enc%1它仍然没有工作,我尝试更换=>>=LSQ(显然是替代方案,小于或等于)所以我想知道这部分的错误.

Mon*_*aft 85

批处理中,>是一个重定向符号,用于将数据输出到文本文件中.cmd的可用比较操作(和推荐)如下(​​引自if /?帮助):

where compare-op may be one of:

    EQU - equal
    NEQ - not equal
    LSS - less than
    LEQ - less than or equal
    GTR - greater than
    GEQ - greater than or equal
Run Code Online (Sandbox Code Playgroud)

这应该解释你想要什么.唯一==可以使用if not参数切换的其他比较操作.除此之外,还依赖于这三个字母.


NiK*_*iZe 7

没有=>,如果.
使用if %energy% GEQ %m2enc%

请参阅if /?其他一些细节.


小智 5

您可以使用:

EQU - 相等

NEQ - 不相等

LSS - 小于

LEQ - 小于或等于

GTR - 大于

GEQ - 大于或等于

避免使用:

() !~ - * / % + - << >> & | = *= /= %= += -= &= ^= |= <<= >>=