第七節 指標

2021-09-29 08:25:10 字數 779 閱讀 6377

go語言有指標這一概念。

直接上**:

func pointtest()  

定義int型別的值a,並且賦值為3

定義int型別指標變數p,並且取a的位址賦值給p

輸出a和p

控制台;

3 0xc00000a0a8 3

process finished with exit code 0

a的值為3,p為a在記憶體中的位址 *p為指標變數中位址的值,也就是a的值 3

go中的指標不能參與運算。

引數傳遞:

go中的引數是值傳遞還是引用傳遞?

go語言只有值傳遞一種方式!

func swap(a,b int)  

呼叫: a,b :=3,4

swap(a,b)

fmt.println(a,b)

控制台輸出:

3 4process finished with exit code 0

a,b的值並沒有發生交換,因為引數在傳遞的時候重新拷貝了乙份,不會影響到函式外面的a,b

如果要交換它們的值,使用指標:

func swap(a,b *int)  

呼叫: a,b :=3,4

swap(&a,&b)

fmt.println(a,b)

控制台:

4 3process finished with exit code 0

a,b的值成功的交換

第七節 覆蓋虛介面

有時候我們需要表達一種抽象的東西,它是一些東西的概括,但我們又不能真正的看到它成為乙個實體在我們眼前出現,為此物件導向的程式語言便有了抽象類的概念。c 作為乙個物件導向的語言,必然也會引入抽象類這一概念。介面和抽象類使您可以建立元件互動的定義。通過介面,可以指定元件必須實現的方法,但不實際指定如何實...

第七節 結構體

1,下面程式是執行結果是?include include struct stu void fun struct stu p intmain1 fun students 1 system pause return0 2,喝汽水,1瓶汽水1元,2個空瓶可以換一瓶汽水,給20元,可以多少汽水 程式設計實現...

HCIE筆記 第七節 ICMP ARP

icmp重定向 作用 解決網路中的次優路徑 觸發 當某乙個裝置收到乙個資料,進行 時發現還要從該介面進行 於是觸發icmp重定向。報文 type 5,code 0 arp 位址解析協議 正向arp 位址解析協議 在已知ip的情況下,求與之對應的mac位址。arp是基於資料鏈路層封裝的2.5層協議。接...