Go语言自学系列 | golang指针
生活随笔
收集整理的這篇文章主要介紹了
Go语言自学系列 | golang指针
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
視頻來源:B站《golang入門到項目實戰 [2021最新Go語言教程,沒有廢話,純干貨!持續更新中...]》
一邊學習一邊整理老師的課程內容及試驗筆記,并與大家分享,侵權即刪,謝謝支持!
附上匯總貼:Go語言自學系列 | 匯總_COCOgsta的博客-CSDN博客
Go語言中的函數傳參都是值拷貝,當我們想要修改某個變量的時候,我們可以創建一個指向該變量地址的指針變量。傳遞數據使用指針,而無需拷貝數據。
類型指針不能進行偏移和運算。
Go語言中的指針操作非常簡單,只需要記住兩個符號:&(取地址)和*(根據地址取值)
指針地址和指針類型
每個變量在運行時都擁有一個地址,這個地址代表變量在內存中的位置。Go語言中使用&字符放在變量前面對變量進行取地址操作。Go語言中的值類型(int、float、bool、string、array、struct)都有對應的指針類型,如:*int、*int64、*string等。
指針語法
一個指針變量指向了一個值的內存地址。(也就是我們聲明了一個指針之后,可以像變量賦值一樣,把一個值的內存地址放入到指針當中。)
類似于變量和常量,在使用指針前你需要聲明指針。指針聲明格式如下:
var var_name *var-typevar-type:為指針類型
var_name:為指針變量名
*:用于指定變量是作為一個指針。
指針聲明示例
var ip *int /* 指向整型 */ var fp *float32 /* 指向浮點型 */指針使用示例
package mainimport "fmt"func main() {var a int = 20 /* 聲明實際變量 */var ip *int /* 聲明指針變量 */ip = &a /* 指針變量的存儲地址 */fmt.Printf("a變量的地址是: %x\n", &a)/* 指針變量的存儲地址 */fmt.Printf("ip變量儲存的指針地址: %x\n", ip)/* 使用指針訪問之 */fmt.Printf("*ip變量的值: %d\n", *ip) }運行結果
[Running] go run "d:\SynologyDrive\軟件開發\go\golang入門到項目實戰\goproject\360duote.com\pro01\test.go" a變量的地址是: c000014098 ip變量儲存的指針地址: c000014098 *ip變量的值: 20總結
以上是生活随笔為你收集整理的Go语言自学系列 | golang指针的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 黑莓8830 功能建介绍 图片
- 下一篇: 计算机网络虚拟局域网实验报告,课程设计实