求助 :整型变量大小比较 出错 ,: 怀疑是autoit的bug
在下面(CPTEST.INI)INI FILE里面读取指定的值,并比较值得大小,结果却显示13<9INI文件如下
Param_zero = 13
Param_com = 9
TEST.AU3代码如下
Global $Param_zero = IniRead(@ScriptDir &"\CPTest.ini", "Parameter", "Param_zero", "NotFound")
Global $Param_com = IniRead(@ScriptDir &"\CPTest.ini", "Parameter", "Param_com", "NotFound")
if $Param_zero >= $Param_com Then
MsgBox(0,"",$Param_zero &">=" &$Param_com )
Else
MsgBox(0,"",$Param_zero &"<" &$Param_com )
EndIf IniRead返回的是字符串,13肯定小于9
If Number($Param_zero) >= Number($Param_com) Then 回复 2# afan
A版这句话如何理解啊? 本帖最后由 afan 于 2010-8-23 12:38 编辑
回复 3# xsjtxy
哪里不理解啊?
字符串是按同一数量的字符排列大小的,13的首一位是1开头肯定小于9
加Number就是将字符串转为数字。 本帖最后由 xsjtxy 于 2010-8-23 12:41 编辑
回复 4# afan
。。。确实很诡异
居然是这样比较的。 回复 2# afan
不注意确实会出错哦!!陷阱一样 回复 6# lsqyx528
注意函数的返回类型就行了,字符串型数值比较一般就加个Number 多谢斑竹。
对了autoit整型的范围是多少呢?什么时候会产生溢出现象 怀疑是autoit的bug—— 别一上来就怀疑是编程工具的bug,你自身都有问题,何以妄想找出编程工具的漏洞,漏洞都是那么好找的吗? 本帖最后由 rolaka 于 2010-8-23 13:31 编辑
http://www.autoitx.com/Doc/index.htm?page=html%2Fintro%2Flang_datatypes.htm
为什么不查查文档呢
而且如果出现这个问题 应该先试试VarGetType... 检查内部类型啊 呵呵,应该先看看帮助文档的。。 回复 9# pusofalse
哈哈,P大说的太好了,BUG是这么容易找的吗?
页:
[1]