Board logo

标题: 关于变量的运算 [打印本页]

作者: mcubird     时间: 2008-9-5 12:13    标题: 关于变量的运算
for /f "delims=.' tokens=5 " %%i in (valfile1.txt) do (
set aaaaa=%%i
)
echo %aaaaa%
我先从文件中获取了数值0024

set /a aaaaa+=1
然后做+1运算

echo %aaaaa%的结果是21
-----------------------------------------------------------
为什么是这样?
我需要结果是0026,怎么做?

作者: pooronce     时间: 2008-9-5 12:56
因为取的数字前面有00,被认成了8进制,8进制的24是十进制的20,所以再自增1就是21了

你需要先把提出的数字去掉前置的0,再进行运算

作者: huahua0919     时间: 2008-9-5 12:58
@echo off
set a=0024
set/a b=100%a%%%100
set/a b=b+1
echo %b%
pause

作者: mcubird     时间: 2008-9-5 13:17
哦~明白了
看来是疏忽了,谢谢啦