package main
import "fmt"
//自定义函数 : 功能 :两个值相加 :
func cal (num1 int, num2 int) { //如果返回值类型就一个的话,那么括号可以不写
var sum int =0
sum += num1
sum += num2
//return sum
fmt.Println (sum)
}
func main(){
// 功能 :10+20
//调用函数:
cal(10, 20)
}
输出 为 30
package main
import "fmt"
// func 函数名 (形参列表) (返回值类型列表){
// 执行语句..
// --return +返回值列表
//}
//自定义函数 : 功能 :两个值相加 :
func cal (num1 int, num2 int) (int) { //如果返回值类型就一个的话,那么括号可以不写
var sum int =0
sum += num1
sum += num2
return sum
//fmt.Println (sum)
}
func main(){
// 功能 :10+20
//调用函数:
sum := cal(10, 20)
fmt.Println (sum)
输出也是30
这2者有什么区别吗 或者说为什么需要返回值
无返回值的版本在函数内部就做了输出,于是不需要将值返回到主函数中处理
有返回值的部分,函数内只做了加法运算,将此结果返回到main函数中,就可以由main函数进行输出
这问题问的...一个是在cal函数内部打印,一个是在main函数打印,打印的位置不同罢了.
有返回值的话可以把函数执行结果拿到别的地方用,比如第二个例子中,你就拿去给fmt打印了.
跟go没关系,所有语言都这样.