我正在尝试理解我在网上找到的批处理脚本,该代码旨在检查当月的最后一天,如果条件为真,则终止脚本。
下载代码的副本。
padding-left
然而,我理解除了以下两行之外的所有代码。
padding-right
当我尝试回声跳跃变量的内容时,我一直得到2,但如果我老实说不明白它怎么会得到0?
任何有关此建议都会有所帮助。
答案 0 :(得分:1)
%%
表示模数,因为每个闰年相隔4年,例如2012年(飞跃),2013,2014,2015,2016(第2次飞跃),如果闰年的价值为0,那么在另一个闰年之前的去年的价值是4.(想想一个数组,[0,1, 2,3,5],0到4相隔5个数字)。因此,2016年是另一个闰年,因为它的值4是从0开始的第5个数字
如果你仍然困惑为什么modulo 4?因为闰年除以4是0,所以正如我之前所说,0表示闰年。
答案 1 :(得分:0)
看起来%leap%
变量用于检查一年是否是闰年。只有echo %leap%
才会获得2,因为2015 % 3
将始终为2.
似乎检查它是否是闰年的逻辑是有缺陷的。一般的方法是
- 如果年份可被4整除,请转到步骤2.否则,请转到步骤5.
- 如果年份可以被100整除,请转到步骤3.否则,请转到步骤4.
- 如果年份可以被400整除,请转到步骤4.否则,请转到步骤5.
- 这一年是闰年(它有366天)。
- 这一年不是闰年(它有365天)。
醇>