中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

go語言的形參是否占用內存

發布時間:2022-12-29 11:19:16 來源:億速云 閱讀:128 作者:iii 欄目:編程語言

本篇內容主要講解“go語言的形參是否占用內存”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“go語言的形參是否占用內存”吧!

形參變量在未出現函數調用時并不占用內存,只在調用時才占用,調用結束后將釋放內存。形參全稱“形式參數”,是函數定義時使用的參數;但函數定義時參數是沒有任實際何數據的,因而在函數被調用前沒有為形參分配內存,其作用是說明自變量的類型和形態以及在過程中的作用。

函數是組織好的、可重復使用的、用來實現單一或相關聯功能的代碼段,其可以提高應用的模塊性和代碼的重復利用率。

函數定義和函數調用

函數構成了代碼執行的邏輯結構,在Go語言中,函數的基本組成為:關鍵字 func、函數名、參數列表、返回值、函數體和返回語句,每一個程序都包含很多的函數,函數是基本的代碼塊。

定義語法:

func 函數名(形參列表)(返回值類型列表) {
  函數體,通常會有return語句,返回值
}

  • 函數名:函數的標識符,用于找到函數,內部是一個指向函數代碼的地址。

  • 形參列表:由變量和類型構成

  • 返回值類型列表:函數返回值的類型,多個返回值需要指定多個。

  • 函數體:實現函數功能的具體語句。 return語句:返回值語句

函數調用語法:

函數名(實參列表)

函數參數

用于在調用函數時向函數傳遞數據。

  • 實參,實際參數。調用時給的參數。指的是具有的特定實際數據的參數。

  • 形參,形式參數。定義時使用的參數。指的是用來表示函數需要參數,而定義時參數是沒有任實際何數據的。 函數/方法在被調用前沒有為他們分配內存,其作用是說明自變量的類型和形態以及在過程中的作用。

    實參與形參的關系:形參只能是變量(要指明它的數據類型);實參可以是變量、常量或者表達式。

    實參與形參的個數、位置以及它們對應的數據類型應當一致。

當調用時會發生使用實參為形參變量賦值的過程,稱為參數的傳遞。在函數的執行期間,形參是有具體數據的,形參當于函數內聲明的變量。參數的傳遞,分為值傳遞,地址傳遞兩種方式。地址傳遞時,需要形參定義為指針類型,調用時需要取得地址傳參。

  • 調用函數時若出現實參是數組名,則傳遞給形參的時數組的首地址。

  • 實參傳遞給形參是單向傳遞。形參變量在未出現函數調用時并不占用內存,只在調用時才占用。調用結束后將釋放內存。

示例代碼:

func funcTest(p1 int, p2 *int) {
  p1++
  *p2++
  fmt.Println(p1, *p2)
}
func main() {
  var (
    a1 = 42
    a2 = 42
  )
  funcTest(a1, &a2)
  // 參數賦值過程
  fmt.Println(a1, a2)
}

以上會輸出

43 43
42 43

到此,相信大家對“go語言的形參是否占用內存”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

蒙阴县| 云龙县| 富源县| 铅山县| 清新县| 肥东县| 根河市| 叶城县| 天峻县| 高要市| 泰宁县| 临城县| 台中市| 忻城县| 海门市| 新和县| 九寨沟县| 无棣县| 乌拉特后旗| 承德市| 宜宾县| 安国市| 光泽县| 白水县| 平泉县| 尉氏县| 镇平县| 长寿区| 东方市| 阿拉尔市| 武宁县| 巴东县| 筠连县| 洱源县| 古蔺县| 枣庄市| 丹江口市| 临海市| 淮安市| 遂川县| 廊坊市|