我正在阅读 QB64 教程,看到以下程序结构用于打印从 1 到 10 的数字 →
FOR x = 1 to 10: PRINT x: NEXT x
我从来没有见过这样的QB64程序。那些冒号:
是什么意思?他们有什么不同吗?
在QB64
IDE 中,您不需要像在其他语言中那样使用特殊字符来终止语句。这也意味着您不能将语句扩展为多行。考虑以下IF...THEN...ELSE...
代码块。
IF
x = 1
THEN
'Do something
...
这不会被解释,因为每个新行都会终止该语句。上面的代码将被解析为:
Statement 1: IF [Incomplete Statement]
Statement 2: x = 1 [assign value 1 to x]
Statement 3: THEN [No such statement]
...
这意味着您必须将单个语句限制在一行上。
但是,相反,您可以在一行中使用多个语句。在这种情况下,由于语句不能以新行结束,因此您必须以冒号结束它们:。在你的情况下,
FOR x = 1 to 10: PRINT x: NEXT x
这将被解析为:
Statement 1: FOR x = 1 to 10 [Initialize a value and set a condition for a FOR...NEXT loop]
Statement 2: PRINT x [Print the value]
Statement 3: NEXT x [Close the FOR...NEXT code block, and iterate the variable]
使用冒号或换行来终止没有显着区别,但就个人而言,我建议使用换行,因为它们使代码看起来更清晰,更易于阅读。但是,有时当有多个简短且不太重要的语句一个接一个时,您可以将它们与冒号组合在一行中,以使您的代码更短且简洁。