VBScript是否有增量运算符?

时间:2014-02-13 15:40:55

标签: vbscript

For y = 1 to 10 
y = y+1
print(y)
Next

对于上面的代码,我得到的输出是2,4,6,8,10。 o / p不应该是2,3,4,5,6,7,8,9,10 我可以将y = y + 1视为y ++

4 个答案:

答案 0 :(得分:4)

vbscript for循环的默认步长增量为1.通过在y = y + 1中添加,每个循环有效地增加2的增量:

 For y = 2 to 10 step 2
     Wscript.echo y
 Next

这样没有“增量算子”;但是,您可以在此上下文中考虑step增量运算符(正数和负数)。

y = y + 1与预期概念y++类似。

你可能最好在do / while循环中使用那种类型的操作,其中没有自动增量,例如:

y = 0
do while y < 10
  y = y + 1
  wscript.echo y
Loop

见上一篇文章: Does VBScript have Increment Operators

答案 1 :(得分:0)

For...Next循环中,您无需手动增加计数器值。

答案 2 :(得分:0)

不,VB脚本没有增量运算符。 VB脚本基于BASIC,它是一种用于学习的语言,并且增量运算符被许多人认为是混乱的,因此它从未被故意添加。

关于第二个问题,要获取您想要的输出,请删除y = y+1行并将循环更改为For y = 2 to 10。另外,是的,y=y+1与大多数语言中的y++相同。

答案 3 :(得分:0)

您正在增加For循环增加的值:

For y = 1 to 10 ' starts at 1, next is 3
y = y+1         ' but you increase it to 2, increased to 4
print(y)        ' prints 2, 4
Next            ' Increases to 3, 5, up to 11, then stops because it's greater than 10