如何比较批处理中的数字大小?
2个回答
展开全部
如果比较的两个值帆敏档是纯数字组成,将自动转换为整数进态乱行比较,bat整数的精度为
-2147483648~2147483647
显然2912022528超过了这个精度,如果执行超过上述精度的数值比较,结果显然不好预测
即使给数字加上引号进行字符串比较,也是不比较长度的,而会从第一个字符开始逐字符比较
因此300大于2912022528,2912022528共有10个字符,要比较数字大小,可以加上引号进行字符串比较,如果是大于10个字符的数字则大于这个数,小于10个数字则小于这个数,如果同样是10个字符则比较大小拿虚,
set /p freesize=请输入大小:if not "%freesize:~10%"=="" ( echo Enough ) else (if not "%freesize:~9%"=="" if "%freesize%" geq "2912022528" echo Enough )
当输入数字大于等于2912022528时会输出Enough,否则没有输出
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询