Board logo

标题: 请问:IF的比较预算符,正常运算的数值最大为多少? [打印本页]

作者: tghksj     时间: 2006-12-20 08:43    标题: 请问:IF的比较预算符,正常运算的数值最大为多少?

如题:

我写的脚本如下:
关于SET语句对变量的处理不知道是否得当,还有
在变量为11位的时候为什么得不到所要的结果
只有在缩减为9位时才能得到正确结果,对比预算符到底最大支持多大数值.
@ECHO OFF
SETLOCAL enabledelayedexpansion

FOR /F "usebackq" %%i IN ('4.txt') DO SET NEW=%%~ti
SET NEW=%NEW:-=%
SET NEW=%NEW: =%
SET NEW=%NEW::=%
SET NEW=%NEW:~-9%

FOR /F "usebackq" %%i IN ('4_B.txt') DO SET OLD=%%~ti
SET OLD=%OLD:-=%
SET OLD=%OLD: =%
SET OLD=%OLD::=%
SET OLD=%OLD:~-9%

ECHO 新: %NEW%
ECHO 旧: %OLD%

::如果新的时间小于或等于老文件时间则显示不更新
IF %NEW% LEQ %OLD% ECHO 不需要更新
IF %NEW% GTR %OLD% ECHO 需要更新

作者: namejm     时间: 2006-12-20 10:09
  呵呵,说错话了,3F正解。

[ Last edited by namejm on 2006-12-19 at 09:23 PM ]
作者: qzwqzw     时间: 2006-12-20 10:16
是-2147483648~2147483647

2^31~2^31-1

实际上就是将2^32分成了两半,而不是将32位分成两半

正数和0,负数各占一半
作者: tghksj     时间: 2006-12-21 04:15
谢谢两位,
还有一个问题没有得到答复..
就是对变量的连续处理手法是否正确.
有没有别的处理方法.