![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-11 20:45 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » for /l 无法中途跳出吗? |
| 可打印版本 940 / 11 |
| 第1楼 1234567 | 发表于 2007-08-16 17:53 |
| 新手上路 发帖 3 积分 8 | |
|
for /l 无法中途跳出吗? 我写了个代码,如下:
为何屏幕显示到2的时候就不动了呢?难道它非要循环到1000000才goto? |
|
| 第2楼 wudixin96 | 发表于 2007-08-16 17:56 |
| 银牌会员 发帖 931 积分 1,928 | |
|
for不能使用goto跳转的。
[ Last edited by wudixin96 on 2007-8-16 at 06:17 PM ] |
|
| 第3楼 1234567 | 发表于 2007-08-16 18:01 |
| 新手上路 发帖 3 积分 8 | |
|
如果说for不能用goto那么请问这段代码怎么解释?
仅仅只是数字小了些. |
|
| 第4楼 wudixin96 | 发表于 2007-08-16 18:08 |
| 银牌会员 发帖 931 积分 1,928 | |
|
自己把@echo off注释了,看一下就知道了
|
|
| 第5楼 1234567 | 发表于 2007-08-16 18:14 |
| 新手上路 发帖 3 积分 8 | |
|
也就是说for非要循环完毕,才能goto
|
|
| 第6楼 kernelv | 发表于 2007-08-16 20:07 |
| 初级用户 发帖 24 积分 47 | |
|
可以跳转,只不过它要等循环全部结束后才跳。
如果没有跳,它会显示变量v的值。 |
|
| 第7楼 scriptor | 发表于 2007-08-19 01:07 |
| 银牌会员 发帖 555 积分 1,187 | |
|
这个和数字大小没有关系吧
我用的是5000,也照样按要求跳出了. |
|
| 第8楼 scriptor | 发表于 2007-08-19 01:07 |
| 银牌会员 发帖 555 积分 1,187 | |
Originally posted by 1234567 at 2007-8-16 18:14: 不要等吧! 是不是你的程序有错? |
|
| 第9楼 knoppix7 | 发表于 2007-08-19 12:15 |
| 银牌会员 发帖 634 积分 1,287 来自 cmd.exe | |
|
FOR 先把所有的可能列举完。
然后再执行 |
|
| 第10楼 dnntgmfd | 发表于 2009-05-12 22:15 |
| 初级用户 发帖 52 积分 85 来自 湘乡 | |
|
正好我也有个疑惑
for /l %%a in (1 1 10) do ( if "%%a"=="3" ( echo 你好) ) else ( start cmd.exe ) ) 我的理解是假如变量a等于3,显示字符串,,否则就打开9个cmd窗口,可为什么,它总是打开10个呢? 难道是我哪里理解错了 |
|
| 第11楼 radem | 发表于 2009-05-13 12:01 |
| 高级用户 发帖 383 积分 691 | |
Originally posted by dnntgmfd at 2009-5-12 10:15 PM: 代码有问题,应该: 打开10个窗口,其中1个显示字符串“你好”、9个CMD窗口 |
|
| 第12楼 Hanyeguxing | 发表于 2009-05-14 00:55 |
| 银牌会员 发帖 897 积分 1,039 来自 在地狱中仰望天堂 | |
|
跳是肯定可以跳的,就用楼主的代码,在P4,1.8G,256Mb的机器上,需要等待37秒。。。。
估计,终止到1000000,需要37秒,终止到100000需要3.7秒,终止到10000需要0.37秒。。。如果终止到10000000需要6、7分钟,如果终止到100000000需要1个小时左右。。。。 问题就出在楼主没耐心上,哈哈 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |