Go-002 基本语法

栏目: IT技术 · 发布时间: 5年前

内容简介:statement,构成源代码最基本的逻辑单位。语句是需要结束的,所以需要语句结束符,标准的语句结束符为分号( ; )。在 Go 的源代码中,绝大多数的情况可以省略语句结束符。从 go 的编译器的角度,会自动添加语句结束符。自动添加的情况为:

1 hello world

1.1 代码

package main 

  import "fmt"

  func main() {
    fmt.Println("hello world")
  }

1.2 执行

// 方法1 编译并执行
go run ./test002.go 

// 方法2 先构建后执行
go build ./test002.go // 构建
./test002 // 执行

2 代码语法要素

2.1.语句

statement,构成源代码最基本的逻辑单位。

2.2.语句结束符

语句是需要结束的,所以需要语句结束符,标准的语句结束符为分号( ; )。

Go 的源代码中,绝大多数的情况可以省略语句结束符。从 go 的编译器的角度,会自动添加语句结束符。自动添加的情况为:

  • 标识符(各种名字):如变量名,常量名,函数名。
  • 字面量(数据原生表示法):如整型,浮点型,虚数型,rune(字符型),和字符串型。
  • 关键字:如break,continue,fallthrough,return
  • 分隔符和运算符: 如 ++, --, ), ], }
    以上内容出现,都表示该行语句结束,因此,强烈推荐省略语句结束符。

注意:有些情况,意味着语句并没有在行尾结束,所以不会补充结束符,例如:

arr := [3]int{  // <---不会补充
      3,  // <---不会补充
      4,  // <---不会补充
      5,  // <---不会补充
  }  // <---自动补充
  fmt.Println(arr)

2.3.注释

行注释:// 注释内容,注释到行末

块注释:多行注释,注释开始和结束符号内部的内容, 注意不支持块嵌套注释!

示例:

package main // 当前为 main 包 

//导入 fmt 包
import "fmt" 

/*
  块注释
  main () 函数,程序的入口函数
*/
func main() {

}

2.4.包

package,特定功能的代码集合,称之为一个包。go 语言模块化的实现。

go要求全部代码都必须要在某个包中。因此,go 源代码的第一行,一定是 package 包名,用于说明代码所处的包。

若需要使用其他的包,则使用 import 语句进行导入。

2.5.main.main() 入口函数

main 包中的 main()函数,一切从这里开始。

每个程序都必须存在该函数,而且只能有一个。

2.6.标识符

各种对象的名字,称之为标识符。例如:包名,函数名,变量名,常量名,类型名。

标识符的构成是:字母(下划线)+数字。

注意:

  • 要求首字母不能是数字,大小写敏感。

    合法的标识符,如: _v userName UserName

    不合法的标识符,如: 42n

  • 有一些内置的标识符,称之为关键字和保留字,不要用。

    如下为关键字和保留字列表:

    Go-002 基本语法

    关键字和保留字列表

2.7.字面量 literal

字面量:值的直接表示形式。

值分为各种类型,因此也存在各种类型的字面量,如:42 、 “hello Golang”。

2.8.运算符与分隔符

提供运算,分割语法的一些特定符号。


以上所述就是小编给大家介绍的《Go-002 基本语法》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Machine Learning

Machine Learning

Kevin Murphy / The MIT Press / 2012-9-18 / USD 90.00

Today's Web-enabled deluge of electronic data calls for automated methods of data analysis. Machine learning provides these, developing methods that can automatically detect patterns in data and then ......一起来看看 《Machine Learning》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

html转js在线工具
html转js在线工具

html转js在线工具