digibread 发表于 2011-9-26 20:21:19

_ArraySearch结果错误

我的代码如下:
#include <Array.au3>

Dim $aBrandArray = [ , ['baidu', '百度'], ['google', '谷歌'] ]
$iIndex = _ArraySearch($aBrandArray, 'baidu123')
ConsoleWrite('$iIndex = ' & $iIndex & @CRLF)
$iIndex这个返回值为0???
二维数组的第0行是数组的长度信息,应该和'baidu123'不匹配的,怎么会返回0呢?
如果使用
$iIndex = _ArraySearch($aBrandArray, 'baidu123', 1)
那么$iIndex返回的是-1

大侠们知道是为什么吗?请教大家

谢谢

bakefish 发表于 2011-9-26 22:18:41

问题就出在那个0上面了,你的数组是两种数据类型,数字和字符串。
当字符串和数字比较时,字符串会被转换成数值类型
当'baidu123'遇到0的时候,它会变形成这样
if 0=number('baidu123') then
    return X
endif
而number('baidu123')的返回值就是0,所以......
页: [1]
查看完整版本: _ArraySearch结果错误