哪个函数是可以把数值或字符串转换成同一类型的?[已解决]
本帖最后由 tanyinhua 于 2014-7-19 19:33 编辑比如$a="1",$b="2",$c=12或$c="12"
$d=$a & $b
现在$c是数值或者是字符串,$d我不知道算不算是个什么类型,反正两个的值都是12,但在对比的时候,有时候会出现不相等的情况,我不知道是为什么,用msgbox弹出提示,两个的值都确实是12,但下面的对比命令If $c=$d Then的时候,却经常出现不相等的情况,我想把两个变量的值转换成同一个类型再比较看看,找了下没找到,有没有哪个函数可以转换的? 自己顶。。。 AU3的数据类型是自动的,或者说是宽松的
你用 & 运算符,结果就是字符串,用 + 连接,结果就是数值 回复 3# hnfeng
那为什么有时候会出现两边都是12,却不相等的情况呢?弹窗弹出的结果显示两个变量的值没问题,但正则表达式却不成立,不知道什么原因。。 回复 3# hnfeng
刚测试了下,相加减确实会自动转换成数值,我就把需要对比的变量都-1再试试- - 本帖最后由 hnfeng 于 2014-7-17 20:36 编辑
Dim $a = "1", $b = "2", $c = 12, $d = "12"
Dim $e = $a & $b
MsgBox(0, "C=D", $c = $d)
MsgBox(0, "D=E", $d = $e)
MsgBox(0, "C=E", $c = $e)结果全部 True
不知道你的情况。 回复 1# tanyinhua
有几个转换变量类型的函数.Number()
String()
HWnd()
Ptr() 字符串比对 “==”
数值比对 “=” 回复 7# user3000
哦,好,谢谢 回复 8# afan
难怪,有时候会混着对比,我还是先转换一下类型吧。。
页:
[1]