Go语言函数

本文介绍了Go语言中的函数概念,包括函数的定义格式、与C语言的差异、值传递和引用传递的区别。此外,还详细讨论了匿名函数、闭包、延迟调用和init函数的使用和特点。匿名函数可以用于一次性调用、保存到变量、作为参数或返回值。闭包是匿名函数与相关引用环境的组合,可以修改外部变量。延迟调用通过defer语句实现,确保在函数结束时执行。init函数则用于包的初始化操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

函数

  • Go语言和C语言一样也有函数的概念, Go语言中函数除了定义格式和不用声明以外,其它方面几乎和C语言一模一样
  • 格式:
func 函数名称(形参列表)(返回值列表){
    函数体;
}
  • 无参数无返回值函数
func say()  {
	fmt.Println("Hello World!!!")
}
  • 有参数无返回值函数
func say(name string)  {
	fmt.Println("Hello ", name)
}
  • 无参数有返回值函数
func sum() int { // 只有一个返回值时,返回值列表的()可以省略
	return 1 + 1
}
  • 有参数有返回值函数
func sum(a int, b int) int {
	return a + b
}

和C语言函数差异

  • 和C语言不同的是,Go语言中可以给函数的返回值指定名称
// 给返回值指定了一个名称叫做res, return时会自动将函数体内部res作为返回值
// 其实本质就是提前定义了一个局部变量res, 在函
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值