@echo off
set Hint=3
echo Hints=%Hint%
pause >nul
set /p Talk=">"
if %Talk%"=="Hint?" &if %Hint%"=="3" echo yay!
pause >nul
cls
我如何让它说“耶!” 使用两个 if 语句(如果可以的话)并且仅当 %Hint%=3? 我是批处理新手,只是初学者。
@echo off
set Hint=3
echo Hints=%Hint%
pause >nul
set /p Talk=">"
if %Talk%"=="Hint?" &if %Hint%"=="3" echo yay!
pause >nul
cls
我如何让它说“耶!” 使用两个 if 语句(如果可以的话)并且仅当 %Hint%=3? 我是批处理新手,只是初学者。
删除&符号&
并添加双引号:
if "%Talk%"=="Hint?" if "%Hint%"=="3" echo yay!
只需从代码中删除 & 符号。
if "%Talk%"=="Hint?" (
if "%Hint%"=="3" (
echo yay!
)
)
你也错过了"
一些
批处理/CMD 中没有二元逻辑运算符。不过,您可以将它们链接在一起,就像在 C 中一样。
if "%Talk%"=="Hint?" if "%Hint%"=="3" echo yay!
如果您需要更复杂的逻辑,您可以使用按位 AND ( &
) 和 OR ( |
) 运算符SET /A
来构建更复杂的表达式并将其简化为单个“布尔”整数。