联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
@echo off set syear=2008 set /a yyyy=syear%4
@echo off set syear=2008 set /a yyyy=syear%%4 if %smouth% == 2 ( if %yyyy% == 0 ( set lday=29 ) else ( set ldate =28 ) ) echo %lday%
Originally posted by xycoordinate at 2007-2-17 21:29: 再问一下: @echo off set syear=2008 if %smouth% == 2 ( set yyyy=syear%%4 if %yyyy% == 0 ( set lday=29 ) else ( set ldate =28 ) ) echo %lday% 应该是29呀?? ...
建议可以先用setlocal ENABLEDELAYEDEXPANSION启用延迟的环境变量,然后在if语句中用!!来代替%%试试
@echo off set syear=2008 set smouth=2 if %smouth% == 2 ( set /a yyyy=syear%%4 if %yyyy% == 0 (set lday=29) else (set ldate =28) ) echo %lday%