所以我正在为学校制作一个项目,如果用户输入无效,我想转到菜单 我的代码是这样的:
:menu
echo.
echo.
echo What would you like to know first?
echo.
echo.
echo 1) Salary
echo 2) What Do they do?
echo 3) Schools near me that offer game design programs
echo 4) Requirements
echo 5) Credits
echo.
echo.
set /p choice="Enter Number: "
if %choice% == 1 goto salary
if %choice% == 2 goto do
if %choice% == 3 goto schools
if %choice% == 4 goto req
if %choice% == 5 goto credits
goto menu
当我输入输入时,有一条闪烁的线
Goto此时出人意料,然后退出
我做错了什么?
我应该补充一点,我的输入不是一个有效的选项。 (1,2,3,4,5)
答案 0 :(得分:4)
if %choice% == 1 goto salary
想象一下,当%choice%
为空时,这会做什么。该行将被读作:
if == 1 goto salary
显然是语法错误。 “goto出人意料”。
要避免这种情况,请使用
if "%choice%" == "1" goto salary
这将被理解为:
if "" == "1" goto salary
现在语法正常。