首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 其他开发语言 >

批处理有关问题

2012-02-12 
批处理问题Set atjjfor /l %%i in (1,1,5) do (set at%at%%%i)echo %at%一个简单的循环,每次更改at这个

批处理问题
Set at=jj
for /l %%i in (1,1,5) do (
set at=%at%;%%i
)
echo %at%

一个简单的循环,每次更改at这个变量,最后希望得到5次连接的结果jj1;2;3;4;5.但是运行的结果是,每次相加的时候,at的值都是循环以外的值。也就是说每次相加的值分别是
jj;1
jj;2
jj;3
jj;4
jj;5

jj;5是最后的值,也就是说at在循环内相当于是值传递,只有出了循环值才会改变,有什么办法可以解决这个问题么


[解决办法]
先顶一下。好像在循环过程中不能显示给at赋的值。
只能单独的显示数字

VBScript code
@echo offSet at=jjfor /l %%i in (1,1,5) do echo %%ipause
[解决办法]
VBScript code
@echo offset at=jjfor /l %%i in (1,1,5) do (echo %at%:%%i)pause
[解决办法]
VBScript code
@echo off&setlocal EnableDelayedExpansionSet at=jjfor /l %%i in (1,1,5) do (set at=%at%;%%iecho !at!)pause 

热点排行