中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-01 21:17
48,037 主题排行 / 350,122 发帖 / 今日 2 篇 / 48,249 会员排行
DOS批处理 & 脚本技术(批处理室) » 如何对多个变量用相同方法处理获得对应变量(自己搞定)
可打印版本  794 / 1
第1楼 zh159 发表于 2006-07-19 23:37
金牌会员 发帖 1,467 积分 3,687
如何对多个变量用相同方法处理获得对应变量(自己搞定)
有若干变量:set1~set10

set A=%setup%

A数据处理

获取set1~set10变量经A数据处理候的新变量:setA1~setA10

如何实现以上%setup%对于set1~set10变量的获取?

使用了 3742668 版主的16进制转换(稍做简化)
将多个变量输入转为“set”,获取对应的“结果1~N”
set 源数=%set%
set /a 源数=%源数% || goto :eof

:dosomething
set /a 余数 = %源数% %% 16
set /a 源数 /= 16
call :转换 %余数%
set 计算结果=%余数%%计算结果%
if %源数% lss 16 goto end
goto dosomething

:转换
set 余数=%1
if %1 lss 10 goto :eof
if "%1" == "10" set 余数=A
if "%1" == "11" set 余数=B
if "%1" == "12" set 余数=C
if "%1" == "13" set 余数=D
if "%1" == "14" set 余数=E
if "%1" == "15" set 余数=F
goto :eof

:end
call :转换 %源数%
set 源数=%余数%
if "%源数%" == "0" set 源数=
set 结果1~N=%源数%%计算结果%
set 源数=
set 余数=
set 计算结果=


[ Last edited by zxcv on 2006-7-24 at 15:08 ]
第2楼 zh159 发表于 2006-07-20 10:53
金牌会员 发帖 1,467 积分 3,687
原来的16进制计算问题已经自己解决了,改一个
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023