- 13
- 0
- 约1.05万字
- 约 14页
- 2016-12-30 发布于重庆
- 举报
整理延迟变量扩展介绍补充
引用变量的值在批处理中习惯叫变量扩展。
使用一对百分号括起变量名(如:%VAR%)的形式表示变量扩展。
延迟引用变量的值叫延迟变量扩展。
使用一对感叹号括起变量名(如:!VAR!)的形式表示延迟变量扩展。
是指变量扩展这个动作被推迟。
有了变量扩展。为什么又多出一个延迟变量扩展呢?
先看下面程序片段1:
set VAR=before
if %VAR% == before (
set VAR=after
echo %VAR%
)
运行结果是什么?
结果是:before
而正确逻辑结果应是:after
为什么会发生这样的事呢?
原来命令解释程序(cmd)在执行复合语句之前做了预处理,即读入复合语
句时做了变量扩展。对于程序片段1,命令解释程序读入if复合语句,接着
做VAR变量扩展,由于此时set VAR=after语句还没有执行,VAR变量的值
未被改变仍然是before,因此,%VAR%扩展为before ,echo %VAR%语句
变为echo before 。然后,命令解释程序从if语句的开头开始执行,很明显
改变VAR变量的值对echo before语句没有影响(因%VAR%已提前扩展为
before),执行结果是before 。
扩展后的程序片段1:
set VAR=before
if before == b
您可能关注的文档
- 托福口语_人+EVENT+PLACE+OBJECT.doc
- 托福口语机经模板与惯用语.docx
- 托福机经背景整理10篇.docx
- 托福适用的阅读能力提升必备材料_(一)动物,植物,生物学.docx
- 托马斯建模Blender.doc
- 执考包括二三站的的perfect版.doc
- 执行力成功企业文化执行中的简单原则.doc
- 技术交底-地下室框架柱剪力墙.doc
- 技术标益阳市马良北路.doc
- 把老师气得怀孕的考卷现在的学生太强了.doc
- 2026届甘肃省民勤三中高考化学三模试卷含解析.doc
- 2021年人力资源年终工作汇报 附2026年人力预算测算表 可直接套用.pptx
- 2021年直播间氛围打造提升停留时长培训课件.pptx
- 2026届广西钦州市第二中学高三第二次模拟考试历史试卷含解析.doc
- 2020应对儿童厌学叛逆专属心理健康教育宣讲课件.pptx
- 2026届江苏省南通巿启东中学5月高三月考物理试题.doc
- 2026年初中语文写作课件.pptx
- 2026年电子元件检测实训教程PPT.pptx
- 2026届安徽省肥东县圣泉中学高三下期末模拟联考数学试题.doc
- 广东省惠东县惠东高级中学2026届高三考前热身生物试卷含解析.doc
原创力文档

文档评论(0)