我正在尝试编写一个批处理文件,该文件根据对set变量执行的模运算的结果执行操作。但是,我似乎无法完全理解。如何在批处理中正确执行模数运算?
为了首先测试我的数学运算的语法,我一直试图让一个更简单的脚本来产生所需的结果。
:START
SETLOCAL
SET /P Input-Num="Input Number: "
SET /A Input-Num=%Input-Num% %% 2
ECHO %Input-Num%
ENDLOCAL
PAUSE
:END
如果我输入5
,预期产量为1
。但是,我收到消息说Missing operator.
,然后它输出5
。
我在这里做错了什么?
这是DOS还是别的?当我运行精确的样本时(在顶部添加了@ECHO OFF),我得到'1'没有'Missing operator' – LittleBobbyTables 2012-07-17 18:39:16
从批处理文件开始,您的代码可以正常工作。如果你直接输入CMD,那么不要越过'%'。使用'%'而不是'%%'。 – vcsjones 2012-07-17 18:42:48
@LittleBobbyTables首先,我喜欢你的屏幕名称。这是在Windows 7中的CMD。我已经更新了标签。 – Iszi 2012-07-17 18:51:32