set本身也有启动耗时,并且应该远远大于计算耗时,所以需要以set /a n*n,n*n的形式来尽量缩小启动用时所占的百分比
我写了一段代码来证明,1*1与1234567890*1234567890耗时分别为13秒与17秒,证明计算耗时是存在的,并且相差很大- @echo off&setlocal enabledelayedexpansion
- set s=1234567890*1234567890
- title %s%
- for /l %%a in (1 1 9) do set s=!s!,!s!
- echo %time%
- for /l %%i in (1,1,20000) do (
- set /a %s%
- )
- echo %time%
- pause
复制代码
|