标题: [奇怪]这是怎么回事啊?
[打印本页]
作者: ssyfzy
时间: 2007-10-6 12:27
标题: [奇怪]这是怎么回事啊?
当前目录有4个txt文件,1.txt 2.txt 3.txt 4.txt和一个批处理文件
a.bat:
@echo off
setlocal enabledelayedexpansion
for %%a in (*.txt) do (
echo %%a
set/a n=0
:ag
set/a n+=1
if not !n!==3 goto ag
)
pause
如果没有最后的if语句,会显示
1.txt
2.txt
3.txt
4.txt
为什么有这个if后,只显示
1.txt
呢?
这个if并没有改变for循环啊
作者: 不得不爱
时间: 2007-10-6 14:28
因为在一个语句体里不能有标号,有了也不能让语句体里的转向语句转向语句体里的标号.
作者: ssyfzy
时间: 2007-10-6 19:10
因为在一个语句体里不能有标号,有了也不能让语句体里的转向语句转向语句体里的标号.
楼上的不对,比如:
@echo off
setlocal enabledelayedexpansion
if 1==1 (
:ag
echo ok
set/a p+=1
if !p! lss 3 goto ag
)
pause
会显示3个OK
Last edited by ssyfzy on 2007-10-7 at 12:40 PM ]