本go程序主要测试的是函数出参数入参个数问题

package main
import (
"fmt"
)
//= 是赋值, := 是声明变量并赋值。
/**********************************
#@param a 是int
#@param b 是int
#Go语言中的参数传递方式都是值传递
#返回值是两个int类型
***********************************/
func f(a int,b int)(int,int){
var c int
var d int
a=1
b=2
c=a
d=b
return c,d
}
//返回三个int类型值,返回的不应该大于入参数个数,否则会报错
func f2(a int,b int,c int)(int,int,int){
var v1 int
var v2 int
var v3 int
a=1
b=2
v1=a
v2=b
v3=a
return v1,v2,v3
}
//add函数入参是2个,返回值是1个
/*********************************************************************
函数返回一个参数时下面方式是等价的,go都支持
func add(入参名 参数类型, 入参名 参数类型,...)(int){...}
func add(入参名 参数类型,入参名 入参类型,...)int{...}
**********************************************************************/
func add(a int,b int)(int){
var c int
c=a+b
return c
}
/*
%d 输出十进制数字
%o 输出八进制数字
%x 输出小写的十六进制
%X 输出大写的十六进制
%b 输出二进制
%t 输出布尔值
%p 输出带0x的指针
%#p 输出不带0x的指针
%T 输出值的变量类型
fmt.Printf("%t\n", num)
fmt.Printf("%t\n", false)
fmt.Printf("%t\n", true)
*/
func main() {
//=号使用时必须先用var声明例如:
var variable1 = 10
//或
var variable2 int = 20
var variable3 int = 11
//:= 是声明并赋值,并且系统自动推断类型,不需要var关键字
//多变量:= ,会自动创建相应变量out,err
out, err := f(variable1,variable2)
out1,err2,i3 := f2(variable1,variable2,variable3)
fmt.Printf("输出结果%d\n",out)
fmt.Printf("输出结果%d\n",err)
fmt.Printf("输出结果%d\n",out1)
fmt.Printf("输出结果%d\n",err2)
fmt.Printf("输出结果%d\n",i3)
var i int =add(21,41)
fmt.Printf("add结果%d\n",i)
}

输出结果为:
> Environment:
> GOPATH=C:\Users\qingshuic\go
> Directory: C:\Program Files\Go\my-jin
> Command: "C:\Program Files\Go\bin\go.exe" run -v "C:\Program Files\Go\my-jin\Go语言=用法.go"
> Output:
输出结果1
输出结果2
输出结果1
输出结果2
输出结果1
add结果62
> Elapsed: 1.325s
> Result: Success
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2022-02-18 nfs客户端的一次处理
2022-02-18 kubectl scale 一次缩容调整过程