Go語言程式:實現函式返回指標
在本文中,我們將編寫 Go 語言程式來實現函式返回指標。指標儲存另一個變數的地址,地址使用 & 運算子表示。
演算法
步驟 1 − 建立一個 main 包,並在程式中宣告 fmt(格式化包),其中 main 生成可執行程式碼,fmt 幫助格式化輸入和輸出。
步驟 2 − 建立一個返回指向 int 的指標的函式 create_pointer。
步驟 3 − 設定函式中 x 的值,並將變數返回給函式。
步驟 4 − 建立一個 main 函式,在該函式中接收返回的指標到變數 ptr 中。
步驟 5 − 在此步驟中,使用 fmt 包中的 Println 函式在控制檯上列印指標指向的值。
示例 1
在此示例中,建立一個函式,該函式返回指向特定值的指標,並在變數內部接收。
package main
import "fmt"
func create_pointer() *int {
x := 62
return &x
}
func main() {
ptr := create_pointer()
fmt.Println("The value pointed to by the pointer is:")
fmt.Println(*ptr)
}
輸出
The value pointed to by the pointer is: 62
示例 2
在此示例中,一個函式將指向變數的指標作為引數,並在函式內部更新該值。更新後的值將與作為引數傳送的值的指標一起在控制檯上列印。
package main
import "fmt"
func update_value(ptr *int) {
*ptr = 62
}
func main() {
a := 0
update_value(&a)
fmt.Println("The value pointed to by the pointer is:")
fmt.Println(a)
}
輸出
The value pointed to by the pointer is: 62
示例 3
在此示例中,我們將編寫一個 Go 語言程式,透過返回指向結構體的指標來實現函式返回指標。返回的指標將使用解引用運算子列印。
package main
import "fmt"
type Person struct {
name string
age int
}
func create_person_pointer() *Person {
ps := Person{name: "Tanishq", age: 36}
return &ps
}
func main() {
ptr := create_person_pointer()
fmt.Println(*ptr)
ptr.age = 30
fmt.Println(*ptr)
}
輸出
{Tanishq 36}
{Tanishq 30}
結論
我們使用三個示例編譯並執行了從函式返回指標的程式。在第一個示例中,我們返回指向 int 的指標變數,該變數使用指標在控制檯上列印;在第二個示例中,我們將指標作為引數並更新值;在第三個示例中,我們返回指向結構體的指標。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP