Go编程规范

文章目录


注释

复制代码
// 单行注释

/* 多行注释
第一行
第二行
*/

转义符

定义变量

由字母、数字、下划线组成,只能以字母或下划线开头。

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

复制代码
var 变量名 变量类型

方法一:指定变量类型,声明后若不赋值,使用默认值

go 复制代码
func main() {
	var i int
	i = 6
	fmt.Println("i=", i)
}

方法二:根据值自行判定变量类型(类型推导)

go 复制代码
var j = 7
fmt.Println("j=", j)

方法三:省略var, 注意:=左侧的变量不应该是已经声明过的,否则会导致编译错误`推荐`

go 复制代码
k := 8
fmt.Println("k=", k)

全局变量和局部变量

go 复制代码
// 声明多个全局变量
var (
	num1  = 100
	num2  = 200
	name1 = "tom"
)

func main() {
	//声明局部变量
	var (
		num3  int    = 300
		num4  int    = 400
		name2 string = "jack"
	)
	//输出全局变量
	fmt.Println(num1, num2, name1)
	fmt.Println(num3, num4, name2)
}

fmt.Printf查看变量

go 复制代码
func main() {
	var n = 10
	fmt.Printf("%T\n", n) //查看变量的数据类型
	fmt.Printf("%v\n", n) //查看变量的值
	fmt.Printf("%b\n", n) //二进制方式输出
}

常量

常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串型

不能修改

go 复制代码
func main() {
	const num1 = 200
	fmt.Printf("num1:%v", num1)
	num1 = 300
	fmt.Printf("num1:%v", num1)
}

iota

iota在const关键字出现时将被重置为0(const 内部的第一行之前),const 中每新增一行常量声明将使iota 计数一次(iota 可理解为const 语句块中的行索引)

go 复制代码
func main() {
	const (
		a = iota  //iota为0,a=0
		b = "tom" //iota为1
		c = iota  //iota为2,a=2
	)
	fmt.Println(a, b, c)
}

定义函数

go 复制代码
func main() {	// 大括号必须在上面,不能单独起一行
	fmt.Println("hello,word!")
}

多行书写

用逗号分行

go 复制代码
func main() {
	fmt.Println("aaaaaaaaaaaaaa",
		"bbbbbbbbbb",
		"cccccccccc")
}

参考

视频:https://ke.qq.com/course/4298934/12948828185532598#term_id=104461528

相关推荐
xcLeigh11 小时前
Go入门:整数类型的溢出与安全边界
java·安全·golang
ttwuai18 小时前
Go 后台附件迁到对象存储后,path、cdnUrl 和 tenant_id 怎么一起验?
开发语言·后端·golang
ttwuai19 小时前
Go 后台清空操作日志失败,权限和无 WHERE 删除怎么排查?
开发语言·后端·golang
gsls20080820 小时前
OpsKat封装MCP:用 Go 标准库把运维 CLI 变成 AI 的“手“
运维·人工智能·golang·mcp
qq_339191141 天前
go cpu占比高排查,cpu100%排查,go pprof cpu命令
开发语言·后端·golang
小翰生信1 天前
转录组下游分析全流程:DESeq2 差异分析、GO/KEGG 富集与 GSEA 实战
数据库·矩阵·golang
Data_Journal2 天前
Scrapyd:分步教程
开发语言·python·microsoft·golang·编辑器·html·iphone
程序员小八7772 天前
Go Web 工程化:日志、配置与错误处理中间件,让服务「能上线」
前端·中间件·golang
2601_962070234 天前
差异基因富集分析(R语言——GO&KEGG&GSEA)
开发语言·golang·r语言
「、皓子~4 天前
海狸IM 2.1 正式发布
flutter·微服务·golang·electron·开源软件·im·海狸im