四时宝库

程序员的知识宝库

每天2分钟学习GO语言编程(九)函数的定义和调用

这一期分享下函数的定义和调用,那么什么是函数呢?函数就是一系列为了某个特定功能而聚集在一起的代码,在给予相同的输入时输出永远相同。这就是函数,函数功能越单一复用度越高。一个函数最好不要超过50行代码。这一期分为以下几个部分:

  1. 函数定义语法
  2. 函数调用
  3. 函数举例

一、函数定义语法

func 函数名(参数列表)(返回值类型1, 返回值类型2){
  函数代码块......
	return 返回值1,返回值2
}

语法解释:

  • 函数名不能省略,不能数字和特殊符号开头,遵守变量命令规则
  • 参数列表可以省略,此时函数无输入参数
  • 返回值类型1,返回值类型2和两边的圆括号都可以省略此时函数没有返回值。
  • 当只有一个返回值时圆括号可以省略
  • func关键字必须与左花括号在一行
  • 函数返回值可以指定变量名称,但是要圆括号。看下面例子

函数定义举例:

func testFunc(i int)(value int, name string){
	fmt.Println(i)
	return i, "xiao ming"
}

二、函数调用

直接上代码:

func testFunc(i int) (value int, name string) {
	fmt.Println(i)
	return i, "xiao ming"
}

func main() {
	i,name := testFunc(1)
	fmt.Println(i,name)
	i,_ = testFunc(2)
	fmt.Println(i,name)
}

函数有可能在某一个包中,import导入某个包就可以使用里面的函数,但是GO的命名规则有些特殊。变量名,函数名,结构体名,大写是包内外都可访问,小写是只允许包内使用。切记,这与C++不同。

当函数有多个返回时,可以选择性的接收和处理。一般函数定义的最后一个返回是error接口,代表着此函数最终结果是正确,有无错误发生。当不想接收某位置的函数时使用_隐藏。

三、函数举例

写一个函数输出乘法口诀:

func testFunc() {
	for i := 1; i < 10; i++ {
		for j := 1; j <= i; j++ {
			fmt.Printf("%d*%d=%d\t", i, j, i*j)
		}
		fmt.Println("")
	}
}

func main() {
	testFunc()
}

好了,这一期分享到这里,感谢大家支持。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接