5.5. 分号
Go语言与C一样都是采用分号来结束一条语句,不一样的是,并不是所有的源码 都要使用分号。Go是采用语法解析器自动在每行末增加分号,所有你在写代码的 时候可以把分号缩略.
这个规则是: 如果一个标记(token)的前一行是标识符(identifier)(就像"int"或 "float64"), 比如: 数字,一个字符串或一个标记.
break continue fallthrough return ++ -- ) }
那么语法解析器就会在标记的后面插入分号,也就是说"在标记的后面是个换行,这说明可能是语句的结束,就增加一个分号"。
在右括号之前可以省略分号,比如:
go func() { for { dst <- <-src } }()
不需要分号。在Go编程中只有几个地方需要增加分号, 比如: for循环 为了把初始化,条件和遍历元素分开。还有在一行中有多条语句,也需要增加分号。
需要注意的是,你不能把控制语句(if, for, switch, or select)左大括号单独方在一行, 如果你这样作了在大括号之前将要插入一个分号,可能会造成不必要的麻烦, 要写成:
if i < f() {
g()
}
不要写成
if i < f() // wrong!
{ // wrong!
g()
}