從go語(yǔ)言中找&和*區(qū)別詳解
*和&的區(qū)別 :& 是取地址符號(hào) , 即取得某個(gè)變量的地址 , 如 ; &a*是指針運(yùn)算符 , 可以表示一個(gè)變量是指針類型 , 也可以表示一個(gè)指針變量所指向的存儲(chǔ)單元 , 也就是這個(gè)地址所存儲(chǔ)的值 . 從代碼中驗(yàn)證 :
先構(gòu)建一個(gè)Rect類型 :
1. &是取地址符號(hào), 取到Rect類型對(duì)象的地址
2. *可以表示一個(gè)變量是指針類型(r是一個(gè)指針變量):
3.*也可以表示指針類型變量所指向的存儲(chǔ)單元 ,也就是這個(gè)地址所指向的值
4.查看這個(gè)指針變量的地址 , 基本數(shù)據(jù)類型直接打印地址

摘自其他博客 :
經(jīng)常會(huì)見(jiàn)到: p . *p , &p 三個(gè)符號(hào)
p是一個(gè)指針變量的名字,表示此指針變量指向的內(nèi)存地址,如果使用%p來(lái)輸出的話,它將是一個(gè)16進(jìn)制數(shù)。而*p表示此指針指向的內(nèi)存地址中存放的內(nèi)容,一般是一個(gè)和指針類型一致的變量或者常量。
而我們知道,&是取地址運(yùn)算符,&p就是取指針p的地址。等會(huì),怎么又來(lái)了個(gè)地址,它到底和p有什么區(qū)別?區(qū)別在于,指針p同時(shí)也是個(gè)變量,既然是變量,編譯器肯定要為其分配內(nèi)存地址,就像程序中定義了一個(gè)int型的變量i,編譯器要為其分配一塊內(nèi)存空間一樣。而&p就表示編譯器為變量p分配的內(nèi)存地址,而因?yàn)閜是一個(gè)指針變量,這種特殊的身份注定了它要指向另外一個(gè)內(nèi)存地址,程序員按照程序的需要讓它指向一個(gè)內(nèi)存地址,這個(gè)它指向的內(nèi)存地址就用p表示。而且,p指向的地址中的內(nèi)容就用*p表示。
到此這篇關(guān)于從go語(yǔ)言中找&和*區(qū)別詳解的文章就介紹到這了,更多相關(guān)go語(yǔ)言&和*區(qū)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
RabbitMQ延時(shí)消息隊(duì)列在golang中的使用詳解
延時(shí)隊(duì)列常使用在某些業(yè)務(wù)場(chǎng)景,使用延時(shí)隊(duì)列可以簡(jiǎn)化系統(tǒng)的設(shè)計(jì)和開(kāi)發(fā)、提高系統(tǒng)的可靠性和可用性、提高系統(tǒng)的性能,下面我們就來(lái)看看如何在golang中使用RabbitMQ的延時(shí)消息隊(duì)列吧2023-11-11
golang實(shí)現(xiàn)圖像驗(yàn)證碼的示例代碼
這篇文章主要為大家詳細(xì)介紹了如何利用golang實(shí)現(xiàn)簡(jiǎn)單的圖像驗(yàn)證碼,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-10-10
Go語(yǔ)言實(shí)現(xiàn)新春祝福二維碼的生成
二維碼現(xiàn)在是隨處度可以看到,買東西,支付,添加好友只要你掃一掃就能完成整個(gè)工作,簡(jiǎn)單且方便。所以利用這個(gè)新春佳節(jié)做一個(gè)帶著新春祝福的二維碼吧2023-02-02
利用Go語(yǔ)言搭建WebSocket服務(wù)端方法示例
這篇文章主要給大家介紹了利用Go語(yǔ)言搭建WebSocket服務(wù)端方法,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們可以參考借鑒,下面來(lái)一起看看吧。2017-04-04
go如何優(yōu)雅關(guān)閉Graceful?Shutdown服務(wù)
這篇文章主要為大家介紹了go優(yōu)雅關(guān)閉Graceful?Shutdown服務(wù)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05
Golang使用sqlite3數(shù)據(jù)庫(kù)實(shí)現(xiàn)CURD操作
這篇文章主要為大家詳細(xì)介紹了Golang使用sqlite3數(shù)據(jù)庫(kù)實(shí)現(xiàn)CURD操作的相關(guān)知識(shí),文中的示例代碼簡(jiǎn)潔易懂,有需要的小伙伴可以參考一下2025-03-03

