Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Variables 批处理文件:为什么我要使用常规扩展而不是延迟扩展?_Variables_Batch File - Fatal编程技术网

Variables 批处理文件:为什么我要使用常规扩展而不是延迟扩展?

Variables 批处理文件:为什么我要使用常规扩展而不是延迟扩展?,variables,batch-file,Variables,Batch File,我理解正常扩展和延迟扩展的含义。但延迟扩展的工作原理与“普通”编程语言(如C和Java)中的变量类似,而普通扩展则非常烦人和怪异 两个问题: “默认情况下”我应该支持什么:正常扩展,即%var%,或延迟扩展,即!var!?在我看来,这是一种恩惠!瓦尔!默认情况下这是一个好主意,但是您看到的大多数地方默认使用%var% 如果!瓦尔!应首选,何时使用%var% 当你使用!瓦尔!然后成为另一个有毒角色。在这里发布新问题之前,您没有对以前的问题进行任何研究,这有什么原因吗?你需要一个关于批处理编程的教程

我理解正常扩展和延迟扩展的含义。但延迟扩展的工作原理与“普通”编程语言(如C和Java)中的变量类似,而普通扩展则非常烦人和怪异

两个问题:

“默认情况下”我应该支持什么:正常扩展,即%var%,或延迟扩展,即!var!?在我看来,这是一种恩惠!瓦尔!默认情况下这是一个好主意,但是您看到的大多数地方默认使用%var%

如果!瓦尔!应首选,何时使用%var%


当你使用!瓦尔!然后成为另一个有毒角色。

在这里发布新问题之前,您没有对以前的问题进行任何研究,这有什么原因吗?你需要一个关于批处理编程的教程,这里有几十个关于变量扩展的问题,包括正常的和延迟的,这清楚地说明了它们之间的区别。我之所以这么问,是因为这是今天在你发布相同基本信息的短时间内的第二个问题,对我来说,这表明在发布之前缺乏研究工作。因此,在您用尽其他选项后,应该是最后的选择。例如,请参阅,它清楚地显示了两者之间的差异,以及何时应使用每种方法。如果我能在5分钟内找到它,而我不是在寻找它,那么你在这里的研究没有找到它似乎很奇怪。你发布的问题的答案没有回答我的问题。我了解什么是延迟扩张和正常扩张,它们是如何工作的,以及它们各自的作用。因为我知道,所以我不认为%var%有什么好处,这就是为什么我发布这个问题的原因。%var%是正常的扩展,这意味着它在第一次遇到行时发生。大多数时候这是必要的!瓦尔!延迟扩展,直到行实际执行,这是必要的,如果您在第一次加载for循环后更改var的值。我所联系的问题解释了延迟扩展是如何使用的,而答案相当清楚地说明了它们之间的区别。这也是与这个主题相关的数百篇文章中的一篇。我问你为什么没有花时间研究。至于什么时候应该使用它们:显然,在正常情况下使用正常扩展,在正常扩展不可能时使用延迟扩展,比如在for循环中需要更改值时。使用normal,直到找到normal不起作用的情况,然后使用not normal延迟扩展。