3.1 标识符

优质
小牛编辑
126浏览
2023-12-01

标识符

Go 的源文件以 .go 为后缀名存储在计算机中,这些文件名均由小写字母、数字、大写字母组成,例如 hello.go 。如果文件名由多个部分组成,则使用下划线 _ 对它们进行分隔,如 pro_03.go 。文件名不包含空格或其他特殊字符。

一个源文件可以包含任意多行的代码,Go 本身没有对源文件的大小进行限制。

Go 语言也是区分大小写的,这与 C 家族中的其它语言相同。有效的标识符必须以字符(可以使用任何 UTF-8 编码的字符或“_”)开头,然后紧跟着 0 个或多个字符或 Unicode 数字,如:C03、_x01、i、消息(虽然Go支持中文变量名,不过我个人不建议这种形式,可以见[例子])。

以下是无效的标识符:

  1. 1hello(以数字开头) 编译的时候提示:syntax error: unexpected ab at end of statement
  2. import(Go 语言的关键字)编译的时候提示:syntax error: unexpected import, expecting }
  3. i-j(运算符是不允许的)编译的时候提示:non-name i - j on left side of :=

这里强调一下,使用关键字做变量名是不可以的,但是可以使用预定义标识符

    string := 1
    fmt.Println(string)

不过我个人并不建议这种形式,这样会造成阅读程序的混乱。

关键字

下面列举了 Go 代码中会使用到的 25 个关键字或保留字:

break    default    func    interface    select 
case    defer    go    map    struct
chan    else    goto    package    switch
const    fallthrough    if    range    type
continue    for    import    return    var

除了以上介绍的这些关键字,Go 语言还有 36 个预定义标识符:

append    bool    byte    cap      close    complex    complex64    complex128    uint16
copy    false    float32    float64    imag    int    int8    int16    uint32
int32    int64    iota    len      make    new    nil    panic    uint64
print    println    real    recover    string    true    uint    uint8    uintptr

Go语言程序规定

程序一般由关键字、常量、变量、运算符、类型、函数和方法组成。
程序中可能会使用到这些分隔符:括号 (),中括号 [] 和大括号 {}。
程序中可能会使用到这些标点符号:、;、…。

行分隔符

在 Go 程序中,每一行代表一个语句。每个语句不需要像C语言家族中的其它语言一样以分号 “;” 结尾,因为这些工作都将由 Go 编译器自动完成。

package main

import (
    "fmt"
)

func main() {
    msg := "Mr. Watson, Come Here, I Want You! \r\n 沃特森先生,过来,我想见你!"
    fmt.Println(msg)
}

如果你打算将多个语句写在同一行,它们则必须使用“;”来区分。(把多个语句写在一行的方式,不是Go所推荐的。)

if err = o.Read(&v); err == nil {
        …………
    }