Board logo

标题: [数值计算] 批处理变量延迟的问题 [打印本页]

作者: 悬崖之树    时间: 2012-7-8 13:35     标题: 批处理变量延迟的问题

  1. @echo off
  2. set num=0&echo %num%
  3. pause
复制代码
在执行 set num=0&echo %num%  时,是num变量不存在呢还是存在但是是空值?
作者: a415987611    时间: 2012-7-9 22:43

num是存在的,其值也确实是0,
但第二行其实执行了如下内容:
set num=0&echo
所以不能正确显示东西

同新手,如有错误,请大虾们指正
作者: forfiles    时间: 2012-7-9 23:23

跟变量延迟扩展没有什么关系。
你要明白bat脚本是解释执行的,当解释到第二行的时候,首先进行变量替换,这个时候由于变量%num%还没有被赋值,所以被替换成空。然后再执行set num=0&echo




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2