【链块技术13期】区块链基础语言(五)——Go语言结构 - Go语言中文社区

【链块技术13期】区块链基础语言(五)——Go语言结构


 

原文链接:区块链基础语言(五)——Go语言结构

 

一、第一个Go程序

我们第一个Go程序以最简单的Hello world作为开始。所有Go语言程序文件的文件名都以“.go”结尾,该程序可以命名为:helloWorld.go。

二、程序结构分析

Go语言程序一般由关键字、包、常量、变量、运算符、符号、类型和函数组成。在这个程序仅涉及到关键字、包、符号和函数,以下对这些内容做简要介绍。这些内容的详细介绍以及常量、变量、运算符、类型等知识点在后面章节逐一展开。

 2.1 关键字

关键字只能在特定的语法结构中使用,不能用于自定义名字。在Go语言程序里,有25个内置关键字和36个预定义标识符,如表1和表2所示。

在这个程序里涉及到的关键词有:package、import、func。

◆ package

声明该程序所属的包,类似于其它语言的库或者模块。

◆ import

导入需要的第三方包。例如这个程序通过导入第三方包fmt实现格式化输出。

◆ func

函数声明的关键字。

 2.2 包

2.21 声明包

每个Go程序的第一行代码都是用于声明此程序所属的包。一般程序关于包的声明格式为:

package 包名

在工程管理那一章里,我们介绍了Go语言一个特殊的包——main包,它包含了main()主函数。这个程序的第一行代码就是对main包的声明:

package main

2.22 导入包

如果这个程序需要用到第三方包中的信息,就需要导入第三方包。例如,在这个程序里需要使用第三方包fmt中的函数来格式化输出,因此需要导入fmt:

import "fmt"

2.23 符号

当一个程序需要导入第三方包时,第三方包的包名要用到一个双引号;如果一个程序需要导入多个第三方包,则导入格式中还需要用到小括号。例如:

import (

    "fmt"

    "strconv"

)

 2.4 函数

2.4.1 函数的声明

函数是Go程序里重要的一部分,函数包括内置函数和自定义函数,在后面章节会重点介绍函数的相关知识。函数声明的关键词是func,一般函数的定义包含以下部分:

func 函数名(参数列表)(返回值列表) {

    // 函数体

}

本程序里包含一个特殊的函数——main()函数。main()函数是Go可执行程序的起点,main是函数名,参数为空,没有返回值。

func main() {

    // 函数体

}

2.4.2 导入包的函数的调用

调用导入包的函数格式:

包名.函数名

这里调用了包fmt中的Println()函数,Println()函数位于第三方包,函数首字母大写,可以被当前包调用:

fmt.Println()

 2.5 行注释和快注释

在Go语言程序代码中,为了提高程序代码的可读性,需要对一个语句、程序段、函数等进行解释说明或提示,这种解释说明或提示就叫做注释。Go语言程序的注释有两种:行注释和块注释。

行注释:注释语句用一行就可以结束,一般用“//行注释内容”表示。

块注释:注释语句需要多行,一般用“/*块注释内容*/”表示。

三、Go语言程序格式书写规范要求

◆ 首字母(包括全局变量名、函数名、结构体类型名、结构体成员变量名)大写的可以由package外部访问,首字母小写的只能在package内部访问;

◆ 句尾一般不需要“;”,如果一行写多条语句用“;”隔开;

◆ “{”必须和func在同一行;

◆ 所有的标点符号都必须是英文格式。

参考资料:

[1] (美)艾伦A.A.多诺瓦(Alan A. A. Donovan),(美)布莱恩W.柯尼汉(Brian W.Kernighan)著;李道兵等译.—北京:机械工业出版社,2017.1(2017.12重印):20

[2] 许式伟,吕桂华.Go语言编程[M].北京:人民邮电出版社,2012:11.

 

链块学院:专注于区块链技术研发与教育

 

                                                                                   —————END—————

 

 

                                                               本文完,获取更多资讯,敬请关注区块链工程师。

                                                                           

 

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/liankuaixy/article/details/81284681
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-05-07 22:30:08
  • 阅读 ( 1397 )
  • 分类:区块链

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢