使用/ p上设置的变量时缺少运算符

时间:2013-10-23 19:47:56

标签: batch-file set

我在我的脚本中使用这段代码,每次脚本到达此部分(集合)时,CMD会发出缺少的运算符(操作数等)错误。 我无法找到任何答案,即使我花了整整一个小时才谷歌搜索和搜索。如果有人能给我一个提示,我会非常高兴!

    :start
echo Good Job everyone!
set /P /a fglobal = You won: 
set /P /a r = Rery: 
set /a global = %fglobal%+%r%
set /P /a size = MaxSize: 
set /a maxsize = %size%*100
set /a mxp = %global%/100
set /a rxp = %random%/1000
set /a xp = %mxp%+%rxp%
echo.
echo SUCCESS!
echo.
echo.
echo Gained money: %global% $ / %maxsize% $
echo Gained XP: %xp%
echo.
pause
cls

2 个答案:

答案 0 :(得分:4)

不要放空格,也不要使用百分数。

set /p a=you won:
set /p r=Reatry:
set /a b=a+r
echo.%b%

答案 1 :(得分:3)

解决方案是避免空格 并且不要混合选项,/P/A,但不能同时混合。

set /P fglobal= You won: 
set /P r= Rery: 
set /a global= %fglobal%+%r%
set /P size= MaxSize: 
set /a maxsize= %size%*100
set /a mxp= %global%/100
set /a rxp= %random%/1000
set /a xp= %mxp%+%rxp%