【问题标题】:Coding a batch game, about using the GOTO tag编写批处理游戏,关于使用 GOTO 标签
【发布时间】:2014-03-01 15:59:14
【问题描述】:
@echo off
:gotoONE
echo ONE
:BeginCode
set /p Choice=What is your choice?
if '%choice%' == '1' GOTO gotoONE
if '%choice%' == '2' GOTO gotoTWO
:gotoTWO
echo TWO

当我在用户输入“1”时使用此(测试)代码时:

if '%choice%' == '1' GOTO gotoONE

代码将转到“gotoTWO”而不是“gotoONE”

如何让代码转到“gotoONE”而不是向前移动。

【问题讨论】:

  • 疯狂猜测:选择开头的大写字母?
  • 你的意思是我应该把它变成小写?
  • 您的代码可以正常工作。当然,如果包含任何空格等,它将失败。输入1,它再次回显ONE
  • 发生的事情是检查失败并转到检查之后的行 - 在这种情况下 gotoTWO (默认情况下)。你能确定你正在检查的内容和你输入的内容确实匹配吗?
  • foxidrive 和 prabindh... 抱歉我修好了哈哈。是的,我在 ACTUAL 代码中输入了错误的代码。

标签: batch-file goto


【解决方案1】:
if %choice% equ 1 GOTO gotoONE
if %choice% equ 2 GOTO gotoTWO

如果您尝试在 set /p Choice= 之后使用它代替原始命令集,它应该可以正常工作。

【讨论】:

    【解决方案2】:

    如果输入其他内容,请进行此更改以防止其失败。

    goto :EOF
    :gotoTWO
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-06
      • 1970-01-01
      • 2017-11-10
      • 1970-01-01
      相关资源
      最近更新 更多