字符串和变量的连接关系
_RunDOS ("md "&$weizhi&"\"&$mingzi)请注意看 最后面是没有&符号的,是能运行成功的!一直对变量和字符串的连接关系搞的不是很清楚,请教后得出这样的理论
只要是放在字符串中间的变量,用双&连接,放在字符串前面的变量,在变量后面用&连接,放在字符串后面的变量,在变面前面用&连接。
自己推断得出这样的例子:
----------------------------------------------------------
$1111 \ $222 这是字符串在中的时候
应该要双&连接是这样&$111&"\"&222&
-------------------------------------------------------------
$111 \ 这是变量在字符串在前面的时候
应该在变量后面加& 是这样$111&"\"
-------------------------------------------------------
\$1111 这是字符串后面有变量的时候
应该在变量前面加& 是这样"\"&$1111
===========================================
实践中\ 通常都是在变量中间的,所以要用双&符号,但是_RunDOS ("md "&$weizhi&"\"&$mingzi) 这里最后并没有&符号,这个算是那种情况?
请大侠们用简洁明了的语言阐述一下字符串和变量的关系,能让像小弟这样刚入门的新手们能解开迷惑 经过试验了一下_RunDOS ("md "&$weizhi&"\"&$mingzi&) 把最后加上&符号 反而不能运行,不解。。。 难道这个不算是在中间的情况吗? 有那么复杂吗?帮助文件里说得很清楚,&是连接符,作用是合并两个字符串。也就是说,&只是将它左右的两个字符串合并成一个。
你的例子,_RunDOS ("md "&$weizhi&"\"&$mingzi),au3是这么处理的:先将变量取其值,并将非字符类型值转为字符类型,比如$weizhi = "aa",$mingzi = 22,然后全部合并再执行。也就是说,最后执行的是:_RunDOS("md aa\22")。
至于_RunDOS ("md "&$weizhi&"\"&$mingzi&),最后的&右边没有合并内容,当然会出错。 感谢楼主的细致,帮助我这个新手,这个问题很困扰我。 我怎么感觉楼主把个简单问题弄的非常复杂。。 :face (13):看晕了我...... 楼主果真搞复杂了,看晕了~
页:
[1]