当前位置: 动力学知识库 > 问答 > 编程问答 >

Does VBScript have increment operator?

问题描述:

For y = 1 to 10

y = y+1

print(y)

Next

For the above code the output which I get is 2,4,6,8,10. Shouldn't the o/p be 2,3,4,5,6,7,8,9,10

Can I consider y = y+1 as y++

网友答案:

The default step increment for a vbscript for loop is 1. By adding in y=y+1, you are effectively increasing your increment by 2 each cycle:

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

There is no "increment operator" as such; However you could consider step an increment operator in this context (both positive and negative).

y = y + 1 is similar as the intended concept y++.

You would probably be best using that type of operation inside a do/while loop where there are no auto increments eg:

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

See this previous post: Does VBScript have Increment Operators

网友答案:

in a For...Next loop, you won'T need to increase the counter value manualy.

网友答案:

You are increasing the value that is increased by the For loop:

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
网友答案:

No, VB Script doesn't have an increment operator. VB script is based on BASIC which is a language meant for learning and the increment operator is considered to be confusing by many so it was never added on purpose.

As for your second question, to get the output you want remove y = y+1 line and change loop to For y = 2 to 10. Also, yes, y=y+1 is the same as y++ in most languages.

分享给朋友:
您可能感兴趣的文章:
随机阅读: