GO语言学习——go的命令

本文介绍了Go语言的基础组成部分,包括包声明、引入包、函数、变量等。详细解释了标识符的使用规则,变量声明的不同方式及常量的概念。此外还列举了Go语言的关键字和预定义标识符。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基础组成

Go 语言的基础组成有以下几个部分:

  • 包声明
  • 引入包
  • 函数
  • 变量
  • 语句 & 表达式
  • 注释
    注意:当标识符(包括常量、变量、类型、函数名、结构字段等等)以一个大写字母开头,如:Group1,那么使用这种形式的标识符的对象就可以被外部包的代码所使用(客户端程序需要先导入这个包),这被称为导出(像面向对象语言中的 public);标识符如果以小写字母开头,则对包外是不可见的,但是他们在整个包的内部是可见并且可用的(像面向对象语言中的 protected )。

无效标识符:
1ab(以数字开头)
case(Go 语言的关键字)
a+b(运算符是不允许的)

关键字

下面列举了 Go 代码中会使用到的 25 个关键字或保留字:
在这里插入图片描述
除了以上介绍的这些关键字,Go 语言还有 36 个预定义标识符:
在这里插入图片描述

语言变量

Go 语言变量名由字母、数字、下划线组成,其中首个字符不能为数字。

声明变量的一般形式是使用 var 关键字:

var identifier type
// 可以一次声明多个变量
var identifier1, identifier2 type

第一种,指定变量类型,如果没有初始化,则变量默认为零值。

  • 数值类型(包括complex64/128)为 0
  • 布尔类型为 false
  • 字符串为 “”(空字符串)

以下几种类型为 nil:

// 声明变量
var v_name v_type
v_name = value

var a *int
var a []int
var a map[string] int
var a chan int
var a func(string) int
var a error // error 是接口

第二种,根据值自行判定变量类型。

var v_name = value
// 例子
package main
import "fmt"
func main() {
    var d = true
    fmt.Println(d)
}

第三种,省略 var, 注意 := 左侧如果没有声明新的变量,就产生编译错误,格式:

v_name := value

在这里插入图片描述

多变量声明:

//类型相同多个变量, 非全局变量
var vname1, vname2, vname3 type
vname1, vname2, vname3 = v1, v2, v3

var vname1, vname2, vname3 = v1, v2, v3 // 和 python 很像,不需要显示声明类型,自动推断

vname1, vname2, vname3 := v1, v2, v3 // 出现在 := 左侧的变量不应该是已经被声明过的,否则会导致编译错误


// 这种因式分解关键字的写法一般用于声明全局变量
var (
    vname1 v_type1
    vname2 v_type2
)

在这里插入图片描述

GO语言常量

常量是一个简单值的标识符,在程序运行时,不会被修改的量。常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串型

const identifier [type] = value
// 声明多个
const c_name1, c_name2 = value1, value2
// 常量可以用来枚举
const (
    Unknown = 0
    Female = 1
    Male = 2
)

在这里插入图片描述

iota

iota,特殊常量,可以认为是一个可以被编译器修改的常量。iota 在 const关键字出现时将被重置为 0(const 内部的第一行之前),const 中每新增一行常量声明将使 iota 计数一次(iota 可理解为 const 语句块中的行索引)。

const (
    a = iota
    b = iota
    c = iota
)
// 第一个 iota 等于 0,每当 iota 在新的一行被使用时,它的值都会自动加 1;所以 a=0, b=1, c=2 可以简写为如下形式:
const (
    a = iota
    b
    c
)

在这里插入图片描述
iota会不断的加1,并且当有独立值时后面的变量均为独立值,直到下一个iota出现。
注:a<<n==a*(2^n)。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值