对于刚刚的for循环次数的问题,为了测试,修改了下代码,用来查看其二进制位,如下:
- @echo off&setlocal enabledelayedexpansion
- set /p "number=input:"
- set /p=!number!=<nul
- for /l %%i in (0 1 31) do (
- set /a a="number&1","number>>=1"
- set "binary=!a!!binary!"
- )
- echo !binary!
- pause>nul
复制代码
可以输入的整数范围是-2147483648~2147483647,32位有符号整数,最高位表示符号位。
不过循环32次结果也正确,因为对于32位范围内的正数来说,最高位总是0。 |