What is the trap of the VBS For Next loop?
This article will explain in detail what the trap of VBS For Next loop is. Xiaobian thinks it is quite practical, so share it with you for reference. I hope you can gain something after reading this article.
The code is as follows:
'Author: Demon
'Website: http://demon.tw
'Date: 2012/2/10
For i = 65 To (i + 25)
s = s & Chr(i)
Next
WScript.Echo s
After running, I found that there was no string output, which was very strange, so I simply modified it:
The copy code is as follows:
'Author: Demon
'Website: http://demon.tw
'Date: 2012/2/10
For i = 65 To (i + 25)
WScript.Echo Chr(i)
s = s & Chr(i)
Next
WScript.Echo s
There was still no output, indicating that the statement in the For Next loop had not been executed at all. He was puzzled, so he consulted the Prophet Evening News, and he quickly discovered the trap:
The copy code is as follows:
'Author: Demon
'Website: http://demon.tw
'Date: 2012/2/10
For i = 65 To (i + 25) Step -1
WScript.Echo Chr(i)
s = s & Chr(i)
Next
WScript.Echo s
This time there is finally a kind of output, I believe that smart you must also find where the trap. The For Next loop is not evaluated from left to right. The expression (i + 25) is evaluated before i = 65, and the value of i is 0 by default, so the original loop is equivalent to:
The copy code is as follows:
'Author: Demon
'Website: http://demon.tw
'Date: 2012/2/10
For i = 65 To 25
s = s & Chr(i)
Next
WScript.Echo s
Of course there is no output, so I ended up changing the program to something like this:
The copy code is as follows:
'Author: Demon
'Website: http://demon.tw
'Date: 2012/2/10
For i = Asc("A") To Asc("Z")
s = s & Chr(i)
Next
WScript.Echo s
About "VBS For Next loop what is the trap" This article is shared here, I hope the above content can be of some help to everyone, so that you can learn more knowledge, if you think the article is good, please share it for more people to see.