在 Go 语言中定义函数

栏目: IT技术 · 发布时间: 5年前

内容简介:到目前为止, 本书中的代码都放在了传感器显示的温度数据应该使用人类能够理解的单位。 假设传感器基于开氏温标提供数据, 其中 0°K 为绝对零度, 也就是理论上的最低温度。 代码清单 12-1 展示了一个将开氏度转换至摄氏度的函数。 在定义了这个转换函数之后, 我们就可以在每次需要进行同样的温度转换时复用该函数。代码清单 12-1 将开氏度转换为摄氏度:

到目前为止, 本书中的代码都放在了 main 函数里面, 但是在处理诸如环境监测程序等更为大型的程序时, 把问题拆分成更小的部分将会非常有用。 使用多个不同的函数组织代码能够令代码更易于理解、复用和维护。

传感器显示的温度数据应该使用人类能够理解的单位。 假设传感器基于开氏温标提供数据, 其中 0°K 为绝对零度, 也就是理论上的最低温度。 代码清单 12-1 展示了一个将开氏度转换至摄氏度的函数。 在定义了这个转换函数之后, 我们就可以在每次需要进行同样的温度转换时复用该函数。

代码清单 12-1 将开氏度转换为摄氏度: kelvin.go

package main
import "fmt"

// kelvinToCelsius 函数会将开氏度转换为摄氏度
func kelvinToCelsius(k float64) float64 {  //声明一个函数,它接受单个形参并返回单个值
    k -= 273.15
    return k
}

func main() {
    kelvin := 294.0
    celsius := kelvinToCelsius(kelvin)   //  调用函数并传递开氏度作为实参
    fmt.Print(kelvin, "°K is ", celsius, "°C")  //  打印出“294°K is 20.850000000000023°C”
}

代码清单 12-1 中展示的 kelvinToCelsius 函数接受一个形参, 它的名字为 k 而类型为 float64 。 这个函数的注释也遵循了 Go 语言的惯例, 它先写下了函数的名字, 然后再介绍函数的具体行为。

除此之外, kelvinToCelsius 函数还会通过关键字 return ,将一个 float64 类型的值返回给调用者, 而它的调用者 main 函数则会将其用于初始化 celsius 变量。

另外需要注意的是, 在同一个包中声明的函数在调用彼此时不需要加上包名作为前缀。

Note

本文摘录自《Go语言趣学指南》第 12 章, 你可以通过访问 gpwgcn.com 来获得该书的更多信息。

在 Go 语言中定义函数

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

挑战编程技能

挑战编程技能

Brian P. Hogan / 臧秀涛 / 人民邮电出版社 / 2017-2 / 39.00元

新手程序员在具备了理论基础后,面对实际项目时,往往不知道如何解决问题;有经验的程序员在学习了一门新语言后,也会有很多不知道如何使用的特性。针对程序员的这一普遍困惑,资深软件工程师Brian P. Hogan在这本书中总结了57道练习题,教他们如何锤炼技能。这些练习题的难度会逐渐增加,使得编程训练充满挑战又乐趣多多。一起来看看 《挑战编程技能》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具