码迷,mamicode.com
首页 > 编程语言 > 详细

golang语言学第五课:函数

时间:2019-01-12 22:52:56      阅读:233      评论:0      收藏:0      [点我收藏+]

标签:ase   func   ati   ted   pre   imp   cas   value   main   

定义函数:

func 函数名(参数1....参数n ) 返回值  {

函数体

}

需要注意的是,go语言的函数,可以有多个返回值,并且返回值可以取名字。不限于2个返回值,可以3个,4个或更多返回值。

另外,go语言支持可变参数列表,但是用的时候就当切片来用。

go语言的函数可以没有返回值,没有返回值时,不要写任何返回类型即可。

package main

import "fmt"

func eval(a,b int, op string) int { //单个返回值
switch op {
case "+":
return a+b
case "-":
return a-b
case "*":
return a*b
case "/":
return a/b
default:
panic("unsuppported operation: "+ op)

}
}

func div(a,b int) (q,r int){ //2个返回值,并且给返回值取名字
return a/b, a%b
}

func multreturnvalue (a, b, c, d, e, f int) (int, int, int, int, int, int) { //超多返回值
return a+1,b+1, c+1, d+1, e+1, f+1
}
func sum(numbers ...int) int { //可变参数列表, 用起来就当切片来用
s:=0
for i:= range numbers {
s+=numbers[i]
}
return s
}
func main() {
fmt.Println(eval(3,4, "*"))
q,r :=div(13,3)
fmt.Println(q, r)
fmt.Println(sum(1,2,3,4,5))
fmt.Println(multreturnvalue(1,2,3,4,5,6))

}

golang语言学第五课:函数

标签:ase   func   ati   ted   pre   imp   cas   value   main   

原文地址:https://www.cnblogs.com/golangxiong/p/10261043.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!