gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区

站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

golang怎么實現(xiàn)指針轉(zhuǎn)換

在golang中,可以利用unsafe包來實現(xiàn)指針轉(zhuǎn)換,實現(xiàn)內(nèi)存地址在不同指針類型間的轉(zhuǎn)換,進而更靈活地操作內(nèi)存。例如unsafe包下的Pointer()函數(shù)可以將任意變量的地址轉(zhuǎn)換成Pointer類型,也可以將Pointer類型轉(zhuǎn)換成任意的指針類型,Pointer類型是不同指針類型之間互轉(zhuǎn)的中間類型。

golang怎么實現(xiàn)指針轉(zhuǎn)換

本教程操作環(huán)境:windows7系統(tǒng)、GO 1.18版本、Dell G3電腦。

在golang中,可以利用unsafe包來實現(xiàn)指針轉(zhuǎn)換。

golang的指針轉(zhuǎn)換

Golang 提供了 unsafe 包,讓我們能夠直接操作指定內(nèi)存地址的內(nèi)存。

unsafe包下,有定義type Pointer *ArbitraryType(任意類型指針),可繞過GO的類型限制,type ArbitraryType int

  • 任何類型的指針值都可以轉(zhuǎn)換為Pointer。

  • Pointer可以轉(zhuǎn)換為任何類型的指針值。

  • uintptr可以轉(zhuǎn)換為Pointer。

  • Pointer可以轉(zhuǎn)換為uintptr。

通過 unsafe.Pointer() 函數(shù),我們能夠獲取變量的內(nèi)存地址表示,本質(zhì)上這是個整數(shù)。可以將任意變量的地址轉(zhuǎn)換成 Pointer 類型,也可以將 Pointer 類型轉(zhuǎn)換成任意的指針類型,它是不同指針類型之間互轉(zhuǎn)的中間類型。

golang怎么實現(xiàn)指針轉(zhuǎn)換

但 Pointer 不支持運算,如果要在內(nèi)存地址上進行加減運算,需要將其轉(zhuǎn)為 uintptr 類型。

下面我們嘗試讀取切片地址,并通過內(nèi)存操作遍歷其內(nèi)容:

package main  import "fmt" import "unsafe"  func main() { 	// head = {address, 10, 10} 	// body = [1,2,3,4,5,6,7,8,9,10] 	var s = []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10} 	var address = (**[10]int)(unsafe.Pointer(&s)) 	var len = (*int)(unsafe.Pointer(uintptr(unsafe.Pointer(&s)) + uintptr(8))) 	var cap = (*int)(unsafe.Pointer(uintptr(unsafe.Pointer(&s)) + uintptr(16))) 	fmt.Println(address, *len, *cap) 	var body = **address 	for i := 0; i < 10; i++ { 		fmt.Printf("%d ", body[i]) 	} } ---------- 0xc000004460 10 10 1 2 3 4 5 6 7 8 9 10
登錄后復制

golang怎么實現(xiàn)指針轉(zhuǎn)換

上述代碼中:

  • unsafe.Pointer(&s) 獲取切片 s 底層表示的第一個位置的內(nèi)存地址,也即底層數(shù)組的地址存放地址,

    通過 (**[10]int)(unsafe.Pointer(&s)) 將其轉(zhuǎn)為 **[10]int 類型指針,又通過 **addrss 還原為數(shù)組;

  • unsafe.Pointer(uintptr(unsafe.Pointer(&s)) + uintptr(8)) 通過地址運算,獲得 length 的存放地址,

    進而通過 (*int)(unsafe.Pointer(uintptr(unsafe.Pointer(&s)) + uintptr(8))) 將 length 內(nèi)存轉(zhuǎn)為 int 指針

    最后通過 *len 獲取切片長度;

    對于 cap 的操作與 len 類似,不再贅述;

總之:

通過 unsafe,我們能夠?qū)崿F(xiàn)內(nèi)存地址在不同指針類型間的轉(zhuǎn)換,進而更靈活地操作內(nèi)存;

本實驗也進一步驗證了切片的底層存儲結(jié)構(gòu);

unsafe 在不是必須的條件下應該少使用,直接操作內(nèi)存畢竟是風險較大的;

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区
亚洲精品自拍网| 亚欧美在线观看| 日本香蕉视频在线观看| 肉色超薄丝袜脚交| 国产免费中文字幕| 91欧美一区二区三区| 青青草原国产免费| 强开小嫩苞一区二区三区网站| 热久久最新网址| 欧美日韩精品在线一区二区| 凹凸国产熟女精品视频| 欧美性猛交久久久乱大交小说| 国产视频1区2区3区| www.成年人| av网站大全免费| 成人久久久久久久久| 亚洲36d大奶网| 黄黄视频在线观看| 久久久精品在线视频| 亚洲va在线va天堂va偷拍| 免费观看黄色大片| 国产成人无码av在线播放dvd| mm131亚洲精品| 久草视频这里只有精品| 黄色片久久久久| 久久国产精品免费观看| 欧美日韩激情视频在线观看| 亚洲第一区第二区第三区| 男人插女人视频在线观看| 色国产在线视频| 日日摸日日碰夜夜爽无码| 超碰超碰在线观看| 日本在线xxx| 香蕉视频xxx| 久久精品网站视频| 久久成人福利视频| gogogo免费高清日本写真| 久久精品香蕉视频| 国产真人做爰毛片视频直播| 免费成年人高清视频| 国产精品99久久免费黑人人妻| 中文字幕55页| 一级黄色录像在线观看| 日韩中文字幕二区| 国产综合av在线| 免费高清一区二区三区| 久久久国产精华液999999| 18岁视频在线观看| 自慰无码一区二区三区| www.日本在线视频| 国产香蕉一区二区三区| 污污视频网站在线| 日日干夜夜操s8| 手机看片一级片| 国产乱女淫av麻豆国产| 成人一区二区三| 99热成人精品热久久66| 国产亚洲精品网站| 那种视频在线观看| 可以免费在线看黄的网站| 亚洲国产精品久久久久婷蜜芽| 国产精品网站免费| 日韩黄色片视频| 日韩欧美xxxx| 91亚洲精品久久久蜜桃借种| 最新天堂在线视频| youjizz.com亚洲| 特级黄色片视频| 台湾无码一区二区| 中国丰满熟妇xxxx性| 日韩精品 欧美| 日本女优爱爱视频| 中文字幕在线视频精品| 最新av在线免费观看| 日韩a级黄色片| av网址在线观看免费| 在线观看免费视频高清游戏推荐| 伊人五月天婷婷| 日韩av在线播放不卡| 国产欧美高清在线| 国产日本欧美在线| 免费国产黄色网址| www.这里只有精品| 中文精品无码中文字幕无码专区| 成熟丰满熟妇高潮xxxxx视频| www.色偷偷.com| www婷婷av久久久影片| 日韩人妻精品无码一区二区三区| 最新国产黄色网址| 狠狠干 狠狠操| 一区二区久久精品| av免费播放网址| 午夜啪啪福利视频| 在线观看免费成人av| 国产aaa免费视频| 91插插插影院| 日韩手机在线观看视频| 欧美一区二区三区综合| www.日本一区| 18禁男女爽爽爽午夜网站免费 | 亚洲日本黄色片| 欧美爱爱视频免费看| 91女神在线观看| 欧美极品欧美精品欧美图片| 性做爰过程免费播放| 五月婷婷之综合激情| 欧美日韩成人免费视频| 久久久久久久久久一区| 欧美成人一区二区在线观看| 一本二本三本亚洲码| 欧美日韩亚洲自拍| 久久久久久久久久福利| 日韩亚洲欧美一区二区| 亚洲精品在线网址| 亚洲精品第三页| 在线观看国产中文字幕| 成人免费毛片播放| 国产免费人做人爱午夜视频| 日韩免费一级视频| 欧美 丝袜 自拍 制服 另类| 91.com在线| 久久久亚洲国产精品| 日韩成人三级视频| 真人做人试看60分钟免费| 激情五月五月婷婷| 可以在线看黄的网站| 天堂av在线中文| www.avtt| 久久久久久久久久久99| 无码人妻少妇伦在线电影| 9191国产视频| 阿v天堂2017| www.色就是色| 亚洲免费成人在线视频| 中国一级黄色录像| 久久人人爽人人爽人人av| 欧美黑人经典片免费观看| 丝袜老师办公室里做好紧好爽| 男人的天堂99| 亚洲黄色小视频在线观看| 污污网站免费看| 久久精品在线免费视频| 日本福利视频在线| 色哟哟精品视频| 午夜免费视频网站| 日韩精品在线视频免费观看| 国产成人无码精品久久久性色| 国产日韩成人内射视频 | 亚洲男人天堂2021| 久久久久久久香蕉| 乱子伦视频在线看| 亚洲欧美日韩不卡| 男人天堂1024| 天天久久综合网| 免费看的黄色大片| 日韩欧美亚洲另类| 国产精品无码人妻一区二区在线| 日av中文字幕| 欧美做暖暖视频| 中文字幕第88页| 欧美日韩亚洲一| 国产资源中文字幕| 国产免费视频传媒| 激情五月六月婷婷| 天堂av2020| 欧美两根一起进3p做受视频| 一本二本三本亚洲码| 成人黄色一区二区| 欧美一级视频免费看| 捷克做爰xxxⅹ性视频| 欧美亚洲国产成人| 久久久久久av无码免费网站下载| 日韩无套无码精品| 国产va亚洲va在线va| 亚洲成人手机在线观看| 中文字幕欧美人妻精品一区| 国产va亚洲va在线va| 精品一区二区成人免费视频| 高潮一区二区三区| 日本在线观看免费视频| 116极品美女午夜一级| 欧美又粗又长又爽做受| 日韩国产精品毛片| 在线观看日本www| 亚洲一区日韩精品| www.se五月| 亚洲天堂国产视频| 天天影视色综合| 可以看污的网站| 天天操天天干天天做| 亚洲最大天堂网| 五月婷婷之婷婷| 九九九九九伊人| 亚洲成人手机在线观看| 黄色a级三级三级三级| 亚洲第一成肉网| 51xx午夜影福利| 成人短视频在线观看免费| 激情视频小说图片| 免费拍拍拍网站|