Board logo

标题: [求助] 用for命令中变量问题! [打印本页]

作者: myth126     时间: 2007-4-26 00:07    标题: [求助] 用for命令中变量问题!

下面是我的一个测试批处理,菜鸟问题请各位不要见笑!我不明白为什么用echo显示变量值的时候,在for命令外面可以而在里面就不行了呢?还有echo %b%%i%这一行是不是有语法错误呢?要怎么改呢?请各位大侠指教,先行谢过!
@echo off
set /p a= 请输入数值:
for /l %%i in (1,1,%a%) do (
set b%%i=%%i
echo %b3%
echo %b%%i%
)
echo %b3%
pause

[ Last edited by myth126 on 2007-4-25 at 11:11 AM ]
作者: wudixin96     时间: 2007-4-26 00:57

@echo off&setlocal enabledelayedexpansion
set /p a= 请输入数值:
for /l %%i in (1,1,%a%) do (
set b%%i=%%i
echo !b3!
echo !b!%%i
)
echo %b3%
pause

作者: myth126     时间: 2007-4-27 22:40
谢谢你的帮助!问题解决了可是我不理解这里迟环境变量作用!论坛上找了一些来看可是不怎么太理解,不知道是不是智商有点问题!^_^
作者: lxmxn     时间: 2007-4-27 23:14


  Quote:
Originally posted by myth126 at 2007-4-27 09:40:
谢谢你的帮助!问题解决了可是我不理解这里迟环境变量作用!论坛上找了一些来看可是不怎么太理解,不知道是不是智商有点问题!^_^

论坛关于变量延迟的讨论很多,多搜索一下就可以找到了。

参考下面两个帖子:
1、[原创]变量延迟详解(新手推荐)
http://www.cn-dos.net/forum/viewthread.php?tid=28273&fpage=1

2、什么情况下该使用变量延迟?
http://www.cn-dos.net/forum/viewthread.php?tid=20733&fpage=1