Go 函数参数与实参

参数与实参

信息可以作为参数传递给函数。参数(parameter)在函数内部充当变量。

参数及其类型在函数名后的括号内指定。您可以根据需要添加任意多的参数,只需用逗号分隔它们:

语法

func FunctionName(param1 type, param2 type, param3 type) {
  // 要执行的代码
}

带参函数的实例

下例中的函数带有一个 string 类型的参数(fname)。

当调用 familyName() 函数时,我们还传递了一个名字(例如 Liam),并在函数内部使用该名字,该函数输出几个不同的名字,但姓氏相同:

实例

package main
import ("fmt")

func familyName(fname string) {
  fmt.Println("Hello", fname, "Gates")
}

func main() {
  familyName("Bill")
  familyName("Elon")
  familyName("Steve")
}

结果:

Hello Bill Gates
Hello Elon Gates
Hello Steve Gates

亲自试一试

注意:参数传递给函数时,它被称为实参(argument)。所以,从上面的例子来看:fname 是一个参数,而 LiamJennyAnja实参

多个参数

在函数内部,您可以添加任意数量的参数:

实例

package main
import ("fmt")

func familyName(fname string, age int) {
  fmt.Println("Hello", age, "year old", fname, "Gates")
}

func main() {
  familyName("Bill", 7)
  familyName("Elon", 26)
  familyName("Steve", 44)
}

结果:

Hello 7 year old Bill Gates
Hello 26 year old Elon Gates
Hello 44 year old Steve Gates

亲自试一试

注意:当您使用多个参数时,函数调用的实参数量必须与参数数量相同,并且实参必须以相同的顺序传递。