本帖最后由 flyinnet9 于 2015-7-28 16:28 编辑
如下代码,想要的结果是
1.如果flag=1,则echo flag ok,判断结束。
2.如果flag不等于1,则判断count的值,并输出
现在的问题是:
1.如果使用变量延迟,当flag不等于1时,即使count=4,也会输出count<=3
2.如果不使用变量延迟,则报错:“此时不应有 (”
各位大神帮看看哪里的问题
有延迟代码- @echo off
- setlocal enabledelayedexpansion
- set /p flag=请输入数字:
- set /a aa=%random%%%4+1
- echo %aa%|set /p count=
- if %flag%==1 (
- echo flag ok
- ) else if !count!==4 (
- echo count=4
- ) else if !count! leq 3 (
- echo count^<=3
- )
- echo count=%aa%
- echo count=%count%
复制代码 无延迟代码- @echo off
- ::setlocal enabledelayedexpansion
- set /p flag=请输入数字:
- set /a aa=%random%%%4+1
- echo %aa%|set /p count=
- if %flag%==1 (
- echo flag ok
- ) else if %count%==4 (
- echo count=4
- ) else if %count% leq 3 (
- echo count^<=3
- )
- echo count=%aa%
- echo count=%count%
复制代码
|