找回密码
 加入
搜索
查看: 2641|回复: 4

[确认非BUG] 刚才发现 AUTOIT 的一个问题

[复制链接]
发表于 2008-8-31 14:14:50 | 显示全部楼层 |阅读模式
`

刚才发现 AUTOIT 的一个问题,其实也不算问题,就是一个要注意的地方。

当你要比较两个字符串是否相等时(不区分大小写) ,比如:

------------------------------------------------------------

$Str1 = SomeFunc1()
$Str2 = SomeFunc2()

If $Str1 = $Str2 Then ...

------------------------------------------------------------

这样可能会出错,如果函数 SomeFunc1() 或 SomeFunc2() 返回的不是一个字符串,而是数字 0 的话(直接一个 Return 语句就可以返回 0),这个比较结果就是错的。无论你怎么比较结果都是 True

改用下面的方法就不会错了:

------------------------------------------------------------

$Str1 = SomeFunc1()
$Str2 = SomeFunc2()

If StringLower($Str1) == StringLower($Str2) Then ...

------------------------------------------------------------

看来在不知道 $Str1 和 $Str2 的值的情况下,If $Str1 = $Str2 Then ... 不怎么可靠。



`
发表于 2008-8-31 16:37:38 | 显示全部楼层
== 这个表示区分大小写
发表于 2008-9-1 11:49:13 | 显示全部楼层
嗯,可以说是一个bug
发表于 2008-9-1 15:34:12 | 显示全部楼层
遇到过,在群里也说过,au3的语法不严谨
发表于 2008-9-1 18:45:15 | 显示全部楼层
好像遇到过,就是任意字符串等于数字0
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-21 18:56 , Processed in 0.068444 second(s), 19 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表