Go语言101之程序源代码基本元素介绍

71 阅读2分钟

作为一个区块链专业的学生怎么能不会Go语言做区块链开发呢!!!!好吧说的就是我━┳━ ━┳━作为一个已经准备转前端 甚至转玄学 的IT大学生还是得在Go这里下点功夫的/(ㄒoㄒ)/~~ (so you will...跑偏了跑偏了) 摸鱼之际找了本书来看,接下来一段时间的目标就是把书读完啦! 附上链接Go语言101 -Go语言101 (go101.org)

编程和程序代码元素

书里讲到了(敲黑板啦)
1,具名的函数、具名的值(包括变量和具名常量)、定义类型和类型别名统称为代码要素,而代码要素必须是标识符
2,关键字(keyword)不可用作标识符
3,包名和包的引入名必须是标识符

示例程序

书中的示例程序如下


package main // 指定当前源文件所在的包名

import "math/rand" // 引入一个标准库包

const MaxRand = 16 // 声明一个具名整型常量

// 一个函数声明
/*
 StatRandomNumbers生成一些不大于MaxRand的非负
 随机整数,并统计和返回小于和大于MaxRand/2的随机数
 个数。输入参数numRands指定了要生成的随机数的总数。
*/
func StatRandomNumbers(numRands int) (int, int) {
	// 声明了两个变量(类型都为int,初始值都为0)
	var a, b int
	// 一个for循环代码块
	for i := 0; i < numRands; i++ {
		// 一个if-else条件控制代码块
		if rand.Intn(MaxRand) < MaxRand/2 {
			a = a + 1
		} else {
			b++ // 等价于:b = b + 1
		}
	}
	return a, b // 此函数返回两个结果
}

// main函数,或主函数,是一个程序的入口函数。
func main() {
	var num = 100
	// 调用上面声明的StatRandomNumbers函数,
	// 并将结果赋给使用短声明语句声明的两个变量。
	x, y := StatRandomNumbers(num)
	// 调用两个内置函数(print和println)。
	print("Result: ", x, " + ", y, " = ", num, "? ")
	println(x+y == num)
}

运行结果

Result: 46 + 54 = 100? true

那么其中呢 像package咯、import咯、const咯、func咯、var咯、for咯、if咯、else咯和return咯都是关键字

关于代码断行

在Go里面对代码块的样式和风格有一些限制,例如 “{” 是不能被放在下一行的,这里我们可以通过阅读代码断行规则[Go代码断行规则 -Go语言101 (go101.org)]来熟悉即可(gfw.go101.org/article/lin…)

第一篇我感觉主要就这些,晚点把基本那些变量呀,函数呀,包呀整理一下