我是一名初级编码员,批量创建基于文本的游戏,我想知道如何在代码中说出以下内容:
If {these variables} have been defined
Then goto {this loop}
Else goto {other loop}
如果任何人都有教程的链接,或者可以通过堆栈回答,那就太棒了!谢谢!
答案 0 :(得分:2)
这只是您可以测试以查看是否已定义所需的所有变量的一种方法。您可以使用FOR
命令来遍历所有变量名,并使用IF
命令来查看它们是否已定义。然后,我设置两个计数器。一种用于定义的变量总数,另一种用于定义的变量总数。
@echo off
REM Change these variables to test logic
set "var1=one"
set "var2=two"
set "var3=3"
set "allvars=var1 var2 var3"
set "vcnt=0"
set "defcnt=0"
FOR %%G IN (%allvars%) do (
set /a vcnt+=1
IF DEFINED %%G SET /a defcnt+=1
)
IF %vcnt% equ %defcnt% (
GOTO allvars
) else (
GOTO notdefined
)
:allvars
echo All variables defined
GOTO END
:notdefined
echo Some variables not defined
GOTO END
:END
pause
答案 1 :(得分:2)
将其放入一个循环中,如果只定义了一个变量,则将其中断
For %%A in (these variables) Do If not defined %%A goto :otherloop
Echo all vars defined
Goto :eof
:otherloop
Echo not all vars defined