一、helloworld实例解释1、package main:定义了包名。必须在源文件中非注释的第一行指明这个文件属于哪个包,如:package main。其表示一个可独立执行的程序,每个Go应用程序都包含一个名为main的包。2、import “fmt”:告诉编译器这个程序需要使用fmt包,fmt包实现了格式化 IO(输入/输出) 的函数。3、func main():是程序入口。main函数是每
转载
2023-11-12 08:26:31
113阅读
Go语言语法类似于C语言,因此熟悉C语言及其派生语言(C++、C#、Objective-C 等)的人都会迅速熟悉这门语言。C语言的有些语法会让代码可读性降低甚至发生歧义。Go语言在C语言的基础上取其精华,弃其糟粕,将C语言中较为容易发生错误的写法进行调整,做出相应的编译提示。(1) 去掉循环冗余括号Go语言在众多大师的丰富实战经验的基础上诞生,去除了C语言语法中一些冗余、烦琐的部分。下面的代码是C
转载
2023-07-24 00:18:18
111阅读
Go 基本架构一、Go 基本架构:package main
import "fmt"
func main() {
fmt.Println("hello, world")
}go 文件的后缀是 .go ;package main:表示文件所在的包是main;每个Go应用程序都包含一个为main的包;所有包名都应该使用小写字母;import “fmt”:表示引入一个包,包名为fmt,引入该
转载
2024-05-15 10:19:41
50阅读
1. gofmt 命令 大部分的格式问题可以通过 gofmt 来解决,gofmt 自动格式化代码,保证所有的 go 代码与官方推荐的格式保持一致,所有格式有关问题,都以gofmt的结果为准。所以,建议在提交代码库之前先运行一下这个命令。2. 行长 一行最长不超过80个字符,超过的使用换行展示,尽量保持格式优雅。3. 注释 在编码阶段应该同步写好 变量、函数、包 的注释,最后可以利用 go
转载
2023-08-30 16:34:27
97阅读
目录1. 取两数之间的随机数2. time.After3. sort.sort实现自定义排序(此部分转载)4. 进制5. 字符串处理5.1 输入输出5.2 ASCII字符串反转、切片反转6. math基本数学函数7. 取调用函数名和调用者的方法名8. map8.1 golang中,map作为函数参数是如何传递的8.2 读取json文件并解析成map9. slice切片中的坑!10. go操作文件
转载
2023-09-18 20:30:41
108阅读
在公司进行代码开发,一般都会制定一套编程规范。良好的代码规范可以改善项目可读性,提高团队开发的合作效率。具体在 Go 语言中,我们可以借鉴 Go 官方的 Go Code Review Comments、Uber 开源的 uber-go/guide 项目,大家感兴趣可以去学习。本文我们聚焦于一个点:Go 的 error 判断。启示代码我们直接看一段代码type MyselfError struct{
转载
2023-08-13 11:31:26
76阅读
在上一篇大概了解了Golang的简单语法及函数等相关后,我们进入到Gin框架的安装一、安装Gin包管理工具以及类库1、安装govendor(包管理工具):必须安装gitgo get github/kardianos/govendor2、安装一些辅助的类库:由于直接访问golang.org会因为需要而无法访问,有的就算有也是无法访问的在这里Gin官方就很友好了,把镜像放到了Gin的官
转载
2024-01-23 23:28:24
11阅读
一、简介2007年,为了提高在多核、网络机器(networked machines)、大型代码库(codebases)的业务场景下的开发效率,Google 首席软件工程师决定创造一种语言那就是 Golang,简称Go。Go 于2009年11月正式宣布推出,成为开放源代码项目,是一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言,支持Linux、macOS、Windows等操作
转载
2023-07-23 19:20:40
18阅读
Goroutines在Go语言中,每一个并发的执行单元叫作goroutine。设想一个程序中有两个函数,假设两个函数没有相互之间的调用关系。一个线性的程序会先调用其中的一个函数,然后再调用另一个。如果程序中包含多个goroutine,对两个函数的调用则可能发生在同一时刻。当一个程序启动时,其main函数即在一个单独的goroutine中运行,我们叫它main goroutine。新的gorouti
转载
2024-07-02 21:54:32
34阅读
go是一种静态编译型的语言,它的编译速度非常快。 go的官方编译器称为gc,包括编译工具5g,6g和8g,连接工具5l,6l和8l。其中的数字表示处理器的架构。我们不必关心如何挑选这些工具,因为go提供了名为”g
转载
2023-09-11 15:58:49
95阅读
Go语言语法类似于C语言,因此熟悉C语言及其派生语言(C++、C#、Objective-C 等)的人都会迅速熟悉这门语言。C语言的有些语法会让代码可读性降低甚至发生歧义。Go语言在C语言的基础上取其精华,弃其糟粕,将C语言中较为容易发生错误的写法进行调整,做出相应的编译提示。1) 去掉循环冗余括号 Go语言在众多大师的丰富实战经验的基础上诞生,去除了C语言语法中一些冗余、烦琐的部分。下面的代码是C
转载
2023-07-12 00:44:43
75阅读
一、命令规范命名是代码规范中很重要的一部分,统一的命名规则有利于提高的代码的可读性,好的命名仅仅通过命名就可以获取到足够多的信息。Go在命名时以字母a到Z或a到Z或下划线开头,后面跟着零或更多的字母、下划线和数字(0到9)。
Go不允许在命名时中使用@、$和%等标点符号。
Go是一种区分大小写的编程语言。
因此,Apple和apple是两个不同的命名。当命名(包括常量、变量、类型、函数名、结构字段
转载
2023-07-25 16:17:21
86阅读
Go 程序的结构Go 语言的基础组成有以下几个部分:包声明引入包函数变量语句 & 表达式注释如下:package main
import "fmt"
func main() {
/* 这是我的第一个简单的程序 */
fmt.Println("Hello, World!")
fmt.Println("这是我的第一个简单的程序")
}
/* 结果如下*/
Hello,
转载
2023-08-18 18:44:22
357阅读
go中逃逸分析是怎么进行的变量逃逸的基本原则是:如果一个函数返回对一个变量的引用,那么它就会发生逃逸简单来说编译器会分析代码的特征和代码的生命周期,go中的变量只有在编译器可以证明函数返回后不会再被引用的,
才会被分配到栈上,其它情况都分配到堆上go语言中没有一个关键字或者函数可以直接让变量被编译器分配到堆上,相反,编译器通过分析代码来决定将变量
分配到何处对一个变量取地址,可能会被分配到堆上,但
转载
2024-01-15 21:20:23
31阅读
目录一、变量赋值的几种方式1.1 声明单个变量1.2 声明多个变量1.3 初始化变量1.4 变量赋值1.5 自动推导类型方式声明变量二、输出输入格式控制2.1 输出格式2.1 输入格式2.3 输出变量对应的地址三、变量数据类型3.1 整形类型1)有符号整数2)无符号整数3)其他整数类型3.2 浮点类型3.3 布尔类型3.4 字符类型3.5 字符串类型四、拓展4.1 强制类型转换4.2 fmt.Pr
转载
2023-11-11 23:47:34
85阅读
编写第一个go程序
1.编写第一个go程序首先说明下go语言的语言结构:go语言是由package包组织的,包类似于其他语言的模块或库。每个程序的开始都用package声明,package+包的名字。package后面用import导入包。必须要导入包程序才能编译。import后面跟组成程序的元素,函数,变量等。函数的声明:func关键字,函数名,[函数
转载
2023-05-31 09:20:37
147阅读
(1)命令源码文件声明自己属于main 代码包、包含无参数声明和结果声明的main 函数。命令源码文件被安装以后,GOPATH 如果只有一个工作区,那么相应的可执行文件会被存放当前工作区的bin文件夹下;如果有多个工作区,就会安装到GOBIN指向的目录下。命令源码文件是Go程序的入口。(2)库源码文件库源码文件就是不具备命令源码文件上述两个特征的源码文件。存在于某个代码包中的普通的源码文件。库源码
转载
2023-12-16 15:38:42
113阅读
一、Go的源码文件Go 的源码文件分类: 如上图,分为三类:1、命令源码文件:声明自己属于 main 代码包、包含无参数声明和结果声明的 main 函数。命令源码文件被安装以后,GOPATH 如果只有一个工作区,那么相应的可执行文件会被存放当前工作区的 bin 文件夹下;如果有多个工作区,就会安装到 GOBIN 指向的目录下。命令源码文件是 Go 程序的入口。同一个代码包中最好也不要放多
转载
2023-12-07 23:33:43
267阅读
本规范旨在为日常Go项目开发提供一个代码的规范指导,方便团队形成一个统一的代码风格,提高代码的可读性,规范性和统一性。本规范将从命名规范,注释规范,代码风格和 Go 语言提供的常用的工具这几个方面做一个说明。该规范参考了 go 语言官方代码的风格制定。命名规范命名是代码规范中很重要的一部分,统一的命名规则有利于提高的代码的可读性,好的命名仅仅通过命名就可以获取到足够多的信息。Go在命名时
转载
2023-09-22 21:36:29
0阅读
一。命令基础1. go run :用于运行命令源码文件(如:go run helloworld.go)只能接受一个命令源码文件以及若干个库源码文件作为文件参数其内部操作步骤:(1)先编译源码文件再运行先会编译作为参数的源码文件-》编译结果放入临时文件夹中-》运行编译的结果。编译结果包括:命令源码文件(.go)和编译后生成的可执行文件和编译后所生成的归档文件(.a)示例: go run hello
转载
2023-08-21 11:07:06
52阅读