从小白到区块链工程师:第一阶段:Go语言中的函数学习(6)
一、 为什么要有函数
我们在以后的编码过程中,有很多代码会重复出现,这些重复实现的代码,我们不需要每次需要用到的时候都编写,我们将重复的代码封装起来。比如在一个网站中,无论是消费的金额还是积分的积累等等都需要用到“加法”的功能,所以我们可以将数据相加封装成一个函数,以后凡是用到加法的功能我们都可以直接调用。
二、 函数定义的语法格式
语法格式:
1:基本函数语法(无参,无返回值值得类型)
func 函数名称(){ //--换行--
主函数的代码体
}
示例如下:

2:带参数的函数语法
func 函数名称(变量名称 变量类型,…..){
---代码内容---
}

全面代码:(交换两个变量的值,函数内交换不就改变定义的值。)

3:不定参函数的语法
func 函数名称(args… 函数类型) {
}


4:函数的嵌套调用
函数里面可以调用其他的函数,层级关系调用。所有的函数都是全局函数,函数名是唯一的。

不定参函数的调用:注意不能直接传值,并且用格式[0:]…

注意:函数的定义位置不会影响他执行的顺序。
5:带有返回值的函数定义
1:单个返回值的语法格式:
func 函数名称(参数列表/无参)返回值类型{
----
}

2:多个返回值的函数:
func 函数名() (函数名称,函数类型,….){
return 返回结果
}

6:函数的类型

需要视频教程的朋友可以参考前几篇文章底部的二维码加我,谢谢
从小白到区块链工程师:第一阶段:Go语言中的函数学习(6)的更多相关文章
- 从小白到区块链工程师:第一阶段:Go语言的HelloWorld初始(2)
四.写下第一段Go语言代码“Hello World” 小建议:就是文件夹路径或者文件名称不要出现中文,可能会导致一些不必要的麻烦(编译失败) 在sublime中,我们在src文件夹上面,单击右键“Ne ...
- 从小白到区块链工程师:第一阶段:Go语言的控制台输入和输出(3)
六,Print系列的函数输出 1:Println 打印换行.Print控制台打印,lnline 一行,打印数据后自动换一行显示.下面显示在控制台打印出不同的类型. 打印输出结果后,会自动换一行.打印结 ...
- 从小白到区块链工程师:第一阶段:Go语言环境的搭建(1)
一,Golang语言简介 2009年由谷歌公司推出,由C语言之父Ken Thompson主导研发.Go(又称Golang)是Google开发的一种静态强类型.编译型.并发型,并具有垃圾回收功能的编程语 ...
- 我是如何从Java转型为Go区块链工程师
我是如何从Java转型为Go区块链工程师 本文来自于一个比原链核心开发的陈述 前言 IT部落在加入比原链之前一直是做Java开发的,当初看到Go还有点犹豫,还怕过不了面试,结果是否掌握一门语言的考量确 ...
- 使用 java 创建你的第一个区块链(第一部分)
本系列教程的目的是帮助您了解如何开发区块链技术. 在本教程中,我们将: 创建你的第一个(非常)基本的“区块链”. 实施简单的工作证明(采矿)系统. 惊叹于可能性. (我假设您对面向对象编程有基本的了解 ...
- 区块链Fabric技术在托管业务中的运用初探
区块链Fabric技术在托管业务中的运用初探 什么是Fabric技术 HyperLedger是IBM.Intel等多家公司正开展的一个区块链项目,包含了Fabric.Iroha等多项技术,其中最为活跃 ...
- 比原链CTO James | Go语言成为区块链主流开发语言的四点理由
11月24日,比原链CTO James参加了Go中国举办的Gopher Meetup杭州站活动,与来自阿里.网易的技术专家带来Kubernetes.区块链.日志采集.云原生等话题的分享.James向大 ...
- 给本体ONT技术社区的第一封公开信-涉及到不少区块链技术知识
给本体ONT技术社区的第一封公开信-涉及到不少区块链技术知识 共识是区块链的核心机制,在一系列的区块链的发展历史当中,PoW/PoS/BFT等系列的共识算法都在各自的应用场景发挥了不同作用.在本体的第 ...
- 正本清源区块链——Caoz
正本清源区块链 说明:以下内容整理自Caoz的<正本清源区块链>,如有不妥,请联系我修改或删除. 简介 不讨论炒币!不讨论炒币!不讨论炒币! 本课程内容分为两部分: 第一部分,烧脑篇,介绍 ...
随机推荐
- Java.ftp上传下载
1:jar的maven的引用: 1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="ht ...
- JS实现的ajax和同源策略
一.回顾jQuery实现的ajax 首先说一下ajax的优缺点 优点: AJAX使用Javascript技术向服务器发送异步请求: AJAX无须刷新整个页面: 因为服务器响应内容不再是整个页面,而是页 ...
- C++标准库和标准模板库(转)
转自原文http://blog.csdn.net/sxhelijian/article/details/7552499 C++强大的功能来源于其丰富的类库及库函数资源.C++标准库的内容总共在50个标 ...
- BrupSuite渗透测试笔记(九)
一. Update BurpSuite 1.选择help ,点击check for updates 记可以进入最新版本的下载界面,profession version need pay for mon ...
- java----面对对象
面对对象: public class Demo { public static void main(String[] args){ Horse h = null; h = new Horse(); / ...
- cf869C组合计数问题
如果在两个区域里连点,两个区域内选的点数一定要相等 即a中选出i个点,必须与b中选出i个点相连 连接种类数为 然后我们再来看,如果ab中有两点相连,其中一点再与c相连会出事吗? 很显然不会对答案产生 ...
- git使用diff----git-pull之后如何查看拉下来的文件有那些修改
git pull拉取 git pull对于拉下来的修改文件自动对其进行git add /rm 及git commit 操作.所以拉下来的文件有那些修改,查看的方式可把它们归结于上一次提交的比较. gi ...
- 新版的K8S中的flannel.yaml文件中要注意的细节
部署flannel作为k8s中的网络插件,yaml文件都大小同异. 但在要注意以下细节. 以前,只需要前面master判断. 现在也需要有not-ready状态了. tolerations: - ke ...
- What's news in Visual Studio 2017
文字总结: 1.高级智能提示 在属性列表中输入 M C即可查询属性中包含字母m\c的属性 2.更快的导航查询,在Go To All中输入任意查询的字符,可快速查到任何包含关键字的文件 3.代码智能分 ...
- POJ 1364 / HDU 3666 【差分约束-SPFA】
POJ 1364 题解:最短路式子:d[v]<=d[u]+w 式子1:sum[a+b+1]−sum[a]>c — sum[a]<=sum[a+b+1]−c−1 ...