批处理变量拼接失败求助:执行时触发Goto意外错误
批处理
Goto was unexpected at this time错误的解决办法 嘿,我一眼就揪出你这段批处理代码的问题啦!那句“Goto was unexpected at this time”的错误提示,完全是因为if语句的引号配对逻辑混乱导致的语法错误。
你原来的代码里,if条件的写法是:
if "House%Player1Block%==1" goto HouseEventP11 if "House%Player1Block%==2" goto HouseEventP12
这里的引号只在条件开头加了一个,却没在对应位置闭合,批处理的解析器根本没法正确识别你的判断逻辑,直接把后续的goto当成了不符合语法的内容,自然就报错了。
修正后的代码
if "House%Player1Block%"=="1" goto HouseEventP11 if "House%Player1Block%"=="2" goto HouseEventP12 echo.You landed on empty block. Claiming house. echo.You now own block %Player1Block%. set "House%Player1Block%=1"
关键修改说明:
- 把每个if条件拆成两个独立的字符串:
"House%Player1Block%"和"1",中间用==连接,这样批处理能明确识别你是在比较变量House%Player1Block%的值是否等于1或2。 - 确保引号成对出现,这是批处理字符串比较的标准写法,还能避免因为空格、特殊字符引发的其他语法问题。
替换成修正后的代码再运行,应该就能正常执行啦!
内容的提问来源于stack exchange,提问作者Kaisha Mina
相关产品推荐
相关产品推荐

