本帖最后由 phanphan 于 2011-3-22 03:28 编辑
怎样获得一个数字的位数?
简单快捷的方法,最好不要用累计字符个数的方法
选取的解决方法(特此致谢 #3 zm900612 ):
-
- @echo off&setlocal enabledelayedexpansion
- set str=123456
- for /l %%a in (0 1 9) do set str=!str:%%a=+1!
- set /a num=!str:~1!
- echo 共%num%位
- pause
复制代码
另:#10随风大大 的思路也很有创意
-
- @echo off
- ::变量字符数只能在15个以内(含15个)
- set "num=fedcba9876543210"
- set var=123
- set str=%var%%num%
- set str=%str:~15%
- set /a str=0x%str:~0,1%
- echo 变量 var 有 %str% 个字符
- pause
复制代码
|