教程集 www.jiaochengji.com
教程集 >  Golang编程  >  golang教程  >  正文 Go语言之函数使用(3)函数调用机制

Go语言之函数使用(3)函数调用机制

发布时间:2022-01-02   编辑:jiaochengji.com
教程集为您提供Go语言之函数使用(3)函数调用机制等资源,欢迎您收藏本站,我们将为您提供最新的Go语言之函数使用(3)函数调用机制资源
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"><path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"/></svg><h2 id="一函数调用的机制和原则">一、函数调用的机制和原则:</h2> <ol><li>当编译器执行调用函数时,就会开辟一个新的数据空间,</li><li>该空间的独立[是编译器处理]</li><li>各个数据空间在栈中。</li></ol><h2 id="二通过案例画出示意图理解函数调用过程">二、通过案例,画出示意图理解函数调用过程</h2>

1、实现:函数使用传入一个数 1

<pre class="prettyprint"><code class=" hljs go"><span class="hljs-keyword">package</span> main <span class="hljs-keyword">import</span> ( <span class="hljs-string">"fmt"</span> ) <span class="hljs-keyword">func</span> test(n1 <span class="hljs-typename">int</span>) { n1 fmt.Println(<span class="hljs-string">"n1="</span>, n1) <span class="hljs-comment">// 11</span> } <span class="hljs-keyword">func</span> main() { n1 :=<span class="hljs-number"> 10</span> test(n1) }</code></pre>


2、计算两个数,并返回

<pre class="prettyprint"><code class=" hljs go"><span class="hljs-keyword">package</span> main <span class="hljs-keyword">import</span> ( <span class="hljs-string">"fmt"</span> ) <span class="hljs-keyword">func</span> getSum(n1 <span class="hljs-typename">int</span>, n2 <span class="hljs-typename">int</span>) <span class="hljs-typename">int</span> { sum := n1 n2 <span class="hljs-keyword">return</span> sum } <span class="hljs-keyword">func</span> main() { sum := getSum<span class="hljs-number">(1</span>,<span class="hljs-number"> 2</span>) } </code></pre>

<h2 id="三基本语法">三、基本语法</h2>

Go函数支持返回多个值,这一点是其它编程语言没有的。

<pre class="prettyprint"><code class=" hljs r">func 函数名(形参列表)(返回值类型列表){ 语句<span class="hljs-keyword">...</span> <span class="hljs-keyword">return</span> 返回值列表 } </code></pre>

说明:
如果返回多个值时,在接收时,希望忽略某个返回值,则使用 _ 符号表示占位忽略
如果返回值只有一个,(返回值类型列表) 可以 不写 ()。

案例代码:

<pre class="prettyprint"><code class=" hljs perl"><span class="hljs-keyword">package</span> main import ( <span class="hljs-string">"fmt"</span> ) func getSumAndSub(n1 <span class="hljs-keyword">int</span>, n2 <span class="hljs-keyword">int</span>) (<span class="hljs-keyword">int</span>, <span class="hljs-keyword">int</span>) { sum := n1 n2 <span class="hljs-sub"><span class="hljs-keyword">sub</span> := n1 - n2 return sum, <span class="hljs-keyword">sub</span> //注意顺序 } func main() {</span> sum, <span class="hljs-sub"><span class="hljs-keyword">sub</span> := getSumAndSub(2, 8) fmt.Printf("sum=%d <span class="hljs-keyword">sub</span>=%d", sum, <span class="hljs-keyword">sub</span>) sum, _ = getSumAndSub(10, 8) fmt.Printf("sum=%d", sum) } </span></code></pre> 到此这篇关于“Go语言之函数使用(3)函数调用机制”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!

您可能感兴趣的文章:
Go语言学习3----Go语言特色
想系统学习GO语言(Golang
Go 语言到底适合干什么?
Go语言发展历史、核心、特性及学习路线
从零开始学习GO语言-搭建Go语言开发环境-快速开发入门第一个小程序
Go 异常处理机制——defer, error, panic, recover
go语言和python哪个难
兄弟连golang神技(1)-关于 Go 语言的介绍
Go 语言学习第一章节
Go语言的主要特性和发展影响

[关闭]
~ ~