例10.变量延迟setlocal语句.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
例10.变量延迟setlocal语句

@echo off echo 变量延迟:读取完整条语句之后,不立即对该行变量赋值,而在下个单条语句前赋值。 echo. echo 变量延迟的作用,说简单点,就是将“复合语句”拆分成“单条语句”,即实现了“延迟”,再进行赋值预处理。 echo. echo 例1.没有启动变量延迟 set a=4 echo %a% echo 由于要读取整条语句后,才能变量赋值,在该语句之前,变量a为空值,因此将执行echo的命令,显示“echo处于打开状态/echo处于关闭状态” set a=5 echo %a% echo %a% echo. pausenul echo 例2.启动变量延迟 setlocal enabledelayedexpansion set a=4 echo !a! set a=5 echo !a! echo. pausenul :%%application echo 例3.启动变量延迟 @echo off echo **** 开始前的set赋值语句 **** echo. set doct=abcde echo set doct=%doct% echo. set doct1=abcde123 echo set doct1=%doct1% echo. set %i=456 echo set %%i=456 echo. echo Rem: set赋值,set %%i=%i%,由于屏蔽一个%%,所以执行set i=%i% set i=123 echo. echo set i=123 echo. echo Rem: set赋值,set i=%i% echo. echo. echo **** for循环语句中的%%应用 **** echo. echo for循环中﹪﹪i是第一个参数,也就是0 echo. echo 如果i字符前加个﹪,在命令行中会屏蔽这个﹪,而且﹪只有相邻的﹪进行组合匹配,其实例如下: echo. for /l %%i in (0 1 0) do ( echo set doct﹪﹪i=﹪﹪i,这里执行doct0 = 0赋值命令 set doct%%i=%%i echo. echo echo ﹪﹪i echo %%i echo ﹪﹪i代表第一个参数,他不是变量,这里的值为0,结果为0 echo. echo echo !﹪﹪i! echo !%%i! echo 由于﹪﹪i的参数值从0~0,而0数值不是变量,因此无效,即执行echo的命令,显示“ECHO 处于打开状态/echo处于关闭状态” echo. echo echo i echo i echo i代表是一个string echo. echo echo !i! echo !i! echo. echo echo ﹪i echo %i echo. echo echo !﹪i! echo !%i! echo 在变量延迟中,用!!括起来,表示可以延迟的变量 echo. echo echo ﹪﹪doct﹪﹪i﹪i﹪ echo Rem:前面两个﹪﹪显示﹪,接下来是字符doct,接下来﹪﹪i显示0,接着﹪i﹪,显示变量i的值123,所以结果为﹪doct0123 echo %%doct%%i%i% echo. echo echo ﹪﹪doct ﹪﹪i﹪i,其结果为﹪doct 0i echo %%doct %%i%i echo. echo echo ﹪﹪doct ﹪﹪i ﹪i echo %%doct %%i %i echo. echo echo doct﹪﹪i echo doct%%i echo. echo echo ﹪doct﹪﹪i﹪,第一个﹪与第二个﹪中间为doct,接着为﹪i﹪,变量i的值,其结果为%doct%%i% echo %doct%%i% echo 上述将doct变量与i变量的值组合显示,而不是显示“doct%%i”变量的值 echo. echo echo ﹪doct﹪ ﹪i﹪ echo %doct% %i% echo 由于没有加!! echo. echo echo !doct﹪﹪i! echo !doct%%i! echo. ) pause

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档