批处理中for中set的问题

@echoofffor/l%%iin(1,1,5)do(setsetvar=%%iecho%var%)pause为什么set出来有var的值,而echo却不显示呢?知道要... @echo off

for /l %%i in (1,1,5) do (set
set var=%%i
echo %var%)

pause

为什么set出来有var的值,而echo却不显示呢?
知道要用延迟,但是这里想不通
展开
 我来答
依梦琴瑶
高粉答主

2018-04-07 · 说的都是干货,快来关注
知道顶级答主
回答量:6.9万
采纳率:82%
帮助的人:1.7亿
展开全部
for循环set需要开启环境变量延迟,之后变量调用时使用感叹号代替百分号,这样才能在for中正常显示变量赋予的值。

@echo off
for /l %%i in (1,1,5) do (
set var=%%i
echo !var!
)
pause
微测检测5.10
2023-05-10 广告
您好!建议咨 深圳市微测检测有限公司,已建立起十余个专业实验室,企业通过微测检测就可以获得一站式的测试与认 证解决方案;(EMC、RF、MFi、BQB、QI、USB、安全、锂电池、快充、汽车电子EMC、汽车手机互 联、语音通话质量),认证遇... 点击进入详情页
本回答由微测检测5.10提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式