问题描述
if结构右括号前一句用了::注释语句,执行报错“此时不应有 )。”
文件内容如下:
@echo off
@echo off
::输入一个内容赋值给var,注意:等号左右不要有空格
set /p var=请输入Y或者N:
::if、else的左右括号前要有空格
if %var% equ Y (
:: 1111
echo 你输入了的字符是 Y
:: 这是一个注释语句
) else if %var% equ N (
:: 222
echo 你输入的字符是 N
:: hhh
)
执行时输入Y,回车之后报错:
解决方法
将右括号前的注释由::换成rem,如下:
@echo off
::输入一个内容赋值给var,注意:等号左右不要有空格
set /p var=请输入Y或者N:
::if、else的左右括号前要有空格
if %var% equ Y (
:: 1111
echo 你输入了的字符是 Y
rem 这是一个注释语句
) else if %var% equ N (
:: 222
echo 你输入的字符是 N
rem hhh
)
再次执行,不会报错