定义格式
函数构成代码执行的逻辑结构。在Go语言中,函数的基本组成为:关键字func、函数名、参数列表、返回值、函数体和返回语句。
Go语言函数定义格式如下:
funcFuncName(/*参数列表*/)(o1type1,o2type2/*返回类型*/){
//函数体、
returnv1,v2//返回多个值
}
函数定义说明:
func:函数由关键字func开始声明
FuncName:函数名称,根据约定,函数名首字母小写即为private,大写即为public
参数列表:函数可以有0个或多个参数,参数格式为:变量名类型,如果有多个参数通过逗号分隔,不支持默认参数
返回类型:
① 上面返回值什么两个变量名,当然这不是必须的,可以有类型,没变量。② 如果只有一个返回值且不声明返回值变量,那么你可以省略,包括返回值的括号。③ 如果没有返回值,那么就直接省略最后的返回信息。④ 如果有返回值,那么必须在函数的内部添加return语句
Waves创始人:用户现有两周时间将Waves代币从CEX取出以获得Power空投:2月20日消息,Waves创始人Sasha Ivanov在推特上表示:“Waves生态系统正在有效地重新启动。要参与新的Waves,用户需要Power。要接收它,您需要在Waves链上拥有您的Waves。您有大约两周的时间将其从中心化交易所中取出。”
金色财经此前报道,Ivanov表示,将于1月至2月空投Power代币,Power空投将只在Waves链上进行。据悉,Power代币是Power DAO平台的代币。2023年Waves 2.0版规划中提及,将推出基于KPI治理的Power DAO平台。[2023/2/20 12:16:50]
函数定义
无参无返回值
funcTest(){//无参无返回值函数定义
fmt.Println("thisisatestfunc")
}
Brave用户现可通过Bitcoin.com购买BCH等加密货币:隐私浏览器Brave与Bitcoin.com达成合作,使用户可以直接在浏览器内访问BCH等加密货币。(Bitcoin.com)[2020/10/25]
funcmain(){
Test()//无参无返回值函数调用
}
有参无返回值
普通参数列表
funcTest01(v1int,v2int){//方式1
fmt.Printf("v1=%d,v2=%d\n",v1,v2)
}
funcTest02(v1,v2int){//方式2,v1,v2都是int类型
fmt.Printf("v1=%d,v2=%d\n",v1,v2)
}
funcmain(){
动态 | Opera网络浏览器钱包的Android用户现可购买ETH:据CoinDesk消息,2月6日,Opera公司宣布,已开通网络浏览器钱包Android用户购买以太坊功能,用户可从其基于浏览器的钱包进行购买。据此前报道,Opera于2018年12月宣布推出移动端的区块链浏览器,并在Android版本中内置了以太坊钱包。[2019/2/6]
Test01(10,20)//函数调用
Test02(11,22)//函数调用
}
不定参数类型
不定参数是指函数传入的参数个数为不定数量。为了做到这点,首先需要将函数定义为接受不定参数类型:
//形如...type格式的类型只能作为函数的参数类型存在,并且必须是最后一个参数funcTest(args...int){
for_,n:=rangeargs{//遍历参数列表
fmt.Println(n)
Algorand基金会宣布启动风险工作室Algo Foundry:5月4日消息,Algorand 基金会宣布与 Undercurrent Capital 合作启动风险工作室 Algo Foundry。据悉,Algo Foundry 致力于发展 Algorand 开发者生态系统,构建 Algorand 区块链基础设施和应用程序。[2022/5/4 2:50:07]
}
}
funcmain(){
//函数调用,可传0到多个参数
Test()
Test(1)
Test(1,2,3,4)
}
不定参数的传递
funcMyFunc01(args...int){
fmt.Println("MyFunc01")
for_,n:=rangeargs{//遍历参数列表
公告 | 隐私项目Origo Network将销毁1.5亿代币:隐私项目Origo Network宣布,为了生态的可持续性,Origo将销毁总量15%,也就是1.5亿个OGO代币。
具体来说,15%的代币销毁分为两部分,9%的代币,也就是9000万个OGO 将从生态系统储备中销毁,剩下6%的代币将从基金会的储备中销毁。1月29日已进行第一次销毁,此次销毁了5000万OGO。
Origo 主网已于1月21日上线,Origo的代币OGO将会分配给如下五个地址:
Origo 基金会地址:
0xe483d4D3D4CD86E42CbAEd3D3fe09402AeeAEC6e,数量:83,460,131.75。
生态系统地址:
0x337E6796855fCe218b71E54B95385489cc6cD1A1,数量:114,203,325.80。
Origo团队地址:
0x04632b8f8890D1438aAa1F452A929be56d5A7c5E,数量:125,000,000.00。
咨询部门地址: 0xAE40127cC6E94B2Bf501AE5e5E82338okE6D65B989,数量:16,666,665.99。
ERC-20 流通地址:
0x7f668e9AAfA536287AE69A1ebae5DdFf8e139680,数量: 419,908,836.50。[2020/2/3]
fmt.Println(n)
}
}
funcMyFunc02(args...int){
fmt.Println("MyFunc02")
for_,n:=rangeargs{//遍历参数列表
fmt.Println(n)
}
}
funcTest(args...int){
MyFunc01(args...)//按原样传递,Test()的参数原封不动传递给MyFunc01
MyFunc02(args...)//Test()参数列表中,第1个参数及以后的参数传递给MyFunc02
}
funcmain(){
Test(1,2,3)//函数调用
}
无参有返回值
有返回值的函数,必须有明确的终止语句,否则会引发编译错误。
一个返回值
funcTest01()int{//方式1
return250
}
//官方建议:最好命名返回值,因为不命名返回值,虽然使得代码更加简洁了,但是会造成生成的文档可读性差
funcTest02()(valueint){//方式2,给返回值命名
value=250
returnvalue
}
funcTest03()(valueint){//方式3,给返回值命名
value=250
return
}
funcmain(){
v1:=Test01()//函数调用
v2:=Test02()//函数调用
v3:=Test03()//函数调用
fmt.Printf("v1=%d,v2=%d,v3=%d\n",v1,v2,v3)
}
多个返回值
funcTest01()(int,string){//方式1
return250,"sb"
}
funcTest02()(aint,strstring){//方式2,给返回值命名
a=250
str="sb"
return
}
funcmain(){
v1,v2:=Test01()//函数调用
_,v3:=Test02()//函数调用,第一个返回值丢弃
v4,_:=Test02()//函数调用,第二个返回值丢弃
fmt.Printf("v1=%d,v2=%s,v3=%s,v4=%d\n",v1,v2,v3,v4)
}
有参有返回值
//求2个数的最小值和最大值
funcMinAndMax(num1int,num2int)(minint,maxint){
ifnum1>num2{//如果num1大于num2
min=num2
max=num1
}else{
max=num2
min=num1
}
return
}
funcmain(){
min,max:=MinAndMax(33,22)
fmt.Printf("min=%d,max=%d\n",min,max)//min=22,max=33
}
5月份全国各省的政策要点 中央: 中银协等三机构联合发文明确金融机构、支付机构不得开展与虚拟货币相关的业务 01 5月18日消息.
Avalanche推出了具有附加功能的新Evergreen子网。链上表现仍然不错,预示着即将到来的价格上涨。Avalanche的网络价值在过去几天显示出复苏的迹象.
由于缺乏先兆和看涨消息,DOGE和SHIB一直在努力跟上1月份发生的更广泛的加密市场反弹。 memecoin现象在上个月的年初加密货币市场反弹中并未证明有效,因为该类别中顶级加密货币的收益几乎没.
现在可以使用柴犬(SHIB)通过Crypto.com应用程序在150多个顶级品牌上购物。全球领先的加密货币交易所Crypto.com推出了一项购物功能,允许用户使用ShibaInu和其他流行的加.
由于社交参与度高,LunarCrush将ShibaInu添加到其交易平台。知名社交智能平台LunarCrush宣布其交易平台LunarCrushTrade新增柴犬.
二手显卡出现暴跌潮,越南街头出现摊贩以电子秤以斤计价贩卖显卡的奇景,据当事人脸书显示,贩售的显卡多为RTX2060super、GTX1070、RTX3070等型号居多.