使用两个if语句

时间:2013-07-09 10:20:53

标签: if-statement batch-file

@echo off
set Hint=3
echo Hints=%Hint%
pause >nul
set /p Talk=">"
if %Talk%"=="Hint?" &if %Hint%"=="3" echo yay!
pause >nul
cls

如何让它说出来#ay; yay!"使用两个if语句(如果可以)并且只有%Hint%= 3? 我是批量新手,只是初学者。

4 个答案:

答案 0 :(得分:3)

删除&符号&并添加双引号:

if "%Talk%"=="Hint?" if "%Hint%"=="3" echo yay!

答案 1 :(得分:1)

只需从代码中删除“&”符号即可。

答案 2 :(得分:1)

if "%Talk%"=="Hint?" (
   if "%Hint%"=="3" (
       echo yay!
   )
)

你也错过了一些"

答案 3 :(得分:1)

批处理/ CMD中没有二进制逻辑运算符。你可以把它们连在一起,就像在C中一样。

if "%Talk%"=="Hint?" if "%Hint%"=="3" echo yay!

如果您需要更复杂的逻辑,可以使用按位AND(&)和OR(|)运算符与SET /A构建更复杂的表达式并将其减少为单个“布尔”整数。