3.2. 第 2 节:函数-函数嵌套调用与返回值
4: 函数嵌套调用
函数也可以像我们在前面学习if选择结构,for循环结构一样进行嵌套使用。所谓函数的嵌套使用,其实就是在一个函数中调用另外的函数。
package main
import "fmt"
func test1(a int, b int) {
fmt.Println(a + b)
}
//函数参数传递时如果有多个参数 中间用逗号分隔
//在函数调用时 使用的是定义中形参的值
func test(n1, n2 int) {
test1(n1, n2)
}
func main0401() {
a := 10
b := 20
test(a, b)
}
func test3(arr ...int) {
fmt.Println(arr)
}
//如果不定参函数调用时传递的参数为多个 不定参要写在其他参数后面
func test2(arr ...int) {
//不能将不定参的名称传递给另外一个不定参
//test3(arr[0], arr[1], arr[2], arr[3])
//传递指定个数的数据
test3(arr[0:4]...)
}
//不定参函数的嵌套调用
func main() {
test2(1, 2, 3, 4)
}
5: 函数的返回值
package main
import "fmt"
//func 函数名(函数参数列表)(函数返回值类型)
func test4(a int, b int) (sum int) {
sum = a + b
//sum := a + b
//fmt.Println("hello world")
//return 表示函数的结束 如果函数有返回值return 可以将返回值返回
return
//fmt.Println("你瞅啥")
//fmt.Println("瞅你咋地")
}
func main0501() {
a := 10
b := 20
//var sum int = 0
sum := test4(a, b)
fmt.Println(sum)
}
//多个返回值
func test5(a int, b int) (sum int, sub int) {
sum = a + b
sub = a - b
return
}
func main() {
a := 10
b := 20
//函数有多个返回值 要一一对应接收数据
sum, sub := test5(a, b)
fmt.Println(sum, sub)
}