中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-04 07:58
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助] 用for命令中变量问题! 查看 823 回复 3
楼 主 [求助] 用for命令中变量问题! 发表于 2007-04-26 00:07 ·  中国 安徽 合肥 电信
初级用户
积分 47
发帖 16
注册 2007-04-02 09:47
19年会员
UID 83710
性别 男
状态 离线
下面是我的一个测试批处理,菜鸟问题请各位不要见笑!我不明白为什么用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 ]
2 发表于 2007-04-26 00:57 ·  中国 浙江 杭州 联通
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
@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
3 发表于 2007-04-27 22:40 ·  中国 安徽 合肥 电信
初级用户
积分 47
发帖 16
注册 2007-04-02 09:47
19年会员
UID 83710
性别 男
状态 离线
谢谢你的帮助!问题解决了可是我不理解这里迟环境变量作用!论坛上找了一些来看可是不怎么太理解,不知道是不是智商有点问题!^_^
4 发表于 2007-04-27 23:14 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
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
论坛跳转: