avatar

就是Van

学与不学反复横跳

  • 首页
  • 子域
  • 分类
  • 标签
  • 归档
  • 关于
首页 Go:Hello, 世界"
文章

Go:Hello, 世界"

发表于 2022/09/07 更新于 2024/01/25
作者 Gjq 3 分钟阅读

hello, world

按照惯例,我们从“hello, world”程序开始,创建helloworld.go文件如下:

1
2
3
4
5
6
7
package main

import "fmt"

func main() {
    fmt.Println("Hello, 世界")
}

go run和go build

输入如下命令:

1
go run hellworld

将会输出“Hello, 世界”,和许多较新的语言一样,Go语言原生支持Unicode,无需做特殊处理即可处理所有国家的语言。

Go是编译型的语言,采用如下命令生成可执行文件,并可直接执行:

1
2
go build helloworld.go
./helloworld

package和import

Go代码是通过package来组织的,在每个源文件开始都会用package指明属于哪个package。在本例中helloworld.go便属于package main。

package main和其他package有所不同,它通常用来定义一个独立的可执行程序。

在package后,紧跟着import来导入所需要的包,本例中即导入了fmt。

函数

在Go语言中,函数的声明为如下格式:

1
2
3
func main(argc int, argv []string) int {

}

从前往后分别为func关键字、函数名、参数列表、返回值列表和函数体。

和C语言不同,函数的返回值列表定义在函数名和参数列表的后方。这种定义方式对一些复杂的声明看起来会比C风格的定义方式要更为直观。

考虑Go’s Declaration Syntax中介绍的某个例子,函数的参数和返回值均含有函数指针:

C:

int (*(*fp)(int (*)(int, int), int))(int, int)

Go:

f func(func(int,int) int, int) func(int, int) int

这种靠后的声明显然更为直观,实际上Go的变量声明也是将参数类型后置,同样在许多场景下会显得更为直观而少歧义,例如指针声明。

格式

Go对格式要求较为严格,但同时也提供了gofmt工具以自动化格式代码。go的子命令fmt也是gofmt的封装,用来格式化指定包里或当前文件夹中的所有文件。

参考

  • The Go Programming Language
Language, Go
go语言 编程
本文由作者按照 CC BY 4.0 进行授权
分享

最近更新

  • Python中的对象
  • Go:函数
  • C语言:宏
  • DST MOD
  • Go Language With C
外部链接
  • 996.icu

文章内容

相关文章

2022/09/19

Go:函数

引言 本文基于Go 1.19版本。 声明 Go语言中,函数的声明由名字、形参列表、返回列表(可选)和函数体构成,注意Go对代码格式要求比较严格: 1 2 3 func name(parameter-list) (result-list) { body } 声明的组成成分 函数的名字和其他名字有着同样的规则,由字母或下划线开头,后面可以跟任意数量的字符、数字和下划线,并且区...

2022/09/12

Python内存

小整数对象池和大整数对象池 Python的解释机制和内存 PyFunctionObject

2022/09/14

Python中的对象

引言 对象是Python 中对数据的抽象。Python程序中的所有数据都是由对象或对象间关系来表示的。 Python中,一切皆对象。 本文基于Python 3.10。 对象的组成 在Python中,任何对象都有各自的标识号、类型和值。 标识号(identity) 一个对象被创建后,其标识号就绝不会改变。通过id()函数可以返回代表对象标识号的整数,is运算符可以用于判断两个对象...

-

Python内存

© 2024 Gjq. 保留部分权利。

本站采用 Jekyll 主题 Chirpy

热门标签

编程 learn go hadoop python 大数据 cgo c语言 dst echo

发现新版本的内容。