为什么在某些程序中两个语句之间有一个冒号
Why is there a colon in some Programs between 2 statements
我正在阅读 QB64 教程,看到以下用于打印 1 到 10 数字的程序结构 →
FOR x = 1 to 10: PRINT x: NEXT x
我从来没有见过这样的QB64程序。这些冒号 :
是什么意思?它们有什么不同吗?
在 QB64
IDE 中,您不需要像在其他语言中那样使用特殊字符来终止语句。这也意味着您 CANNOT 将语句扩展为多行。考虑以下 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]
使用冒号或换行来终止没有显着区别,但就我个人而言,我建议使用换行,因为它们使代码看起来更清晰,更易于阅读。然而,有时当有多个简短且不太重要的语句接连出现时,您可以将它们组合在一行中,并使用冒号使您的代码看起来更短、更简洁。
我正在阅读 QB64 教程,看到以下用于打印 1 到 10 数字的程序结构 →
FOR x = 1 to 10: PRINT x: NEXT x
我从来没有见过这样的QB64程序。这些冒号 :
是什么意思?它们有什么不同吗?
在 QB64
IDE 中,您不需要像在其他语言中那样使用特殊字符来终止语句。这也意味着您 CANNOT 将语句扩展为多行。考虑以下 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]
使用冒号或换行来终止没有显着区别,但就我个人而言,我建议使用换行,因为它们使代码看起来更清晰,更易于阅读。然而,有时当有多个简短且不太重要的语句接连出现时,您可以将它们组合在一行中,并使用冒号使您的代码看起来更短、更简洁。