我正在阅读QB64教程并看到以下程序结构,用于打印1到10之间的数字→
FOR x = 1 to 10: PRINT x: NEXT x
我从未见过这种QB64程序。那些冒号:
是什么意思?它们有什么不同吗?
答案 0 :(得分:2)
我是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]
使用冒号或新行终止之间没有显着差异,但就个人而言,我建议使用新行,因为它们使代码看起来更清晰,更易于阅读。但是,有时一个接一个地存在多个简短且不太重要的语句,您可以将它们组合在冒号的单行上,以使您的代码更简洁,更简洁。