Golang 菜鳥教程

Golang 控制語句

Golang 函數(shù) & 方法

Golang 結(jié)構(gòu)體

Golang 切片 & 數(shù)組

Golang 字符串(String)

Golang 指針

Golang 接口

Golang 并發(fā)

Golang 異常(Error)

Golang 其他雜項(xiàng)

Go 語言指針比較

在Go語言中,允許比較兩個指針。兩個指針值只有在它們指向內(nèi)存中的相同值或者它們是nil時才相等。您可以在Go語言提供的==和!=運(yùn)算符的幫助下對指針進(jìn)行比較:

1. == 運(yùn)算符:如果兩個指針都指向同一個變量,則此運(yùn)算符返回true?;蛉绻麅蓚€指針都指向不同的變量,則返回false。

語法:

pointer_1 == pointer_2
package main

import "fmt"

func main() {

    val1 := 2345
    val2 := 567

    //創(chuàng)建和初始化指針
    var p1 *int
    p1 = &val1
    p2 := &val2
    p3 := &val1

    //使用==運(yùn)算符比較指針
    res1 := &p1 == &p2
    fmt.Println("p1指針是否等于p2指針: ", res1)

    res2 := p1 == p2
    fmt.Println("p1指針是否等于p2指針: ", res2)

    res3 := p1 == p3
    fmt.Println("p1指針是否等于p3指針: ", res3)

    res4 := p2 == p3
    fmt.Println("p2指針是否等于p3指針: ", res4)

    res5 := &p3 == &p1
    fmt.Println("p3指針是否等于p1指針: ", res5)
}

輸出:

p1指針是否等于p2指針:  false
p1指針是否等于p2指針:  false
p1指針是否等于p3指針:  true
p2指針是否等于p3指針:  false
p3指針是否等于p1指針:  false

2.!= 運(yùn)算符:如果兩個指針都指向同一個變量,則此運(yùn)算符返回false?;蛉绻麅蓚€指針都指向不同的變量,則返回true。

語法:

pointer_1 != pointer_2
package main

import "fmt"

func main() {

    val1 := 2345
    val2 := 567

    //創(chuàng)建和初始化指針
    var p1 *int
    p1 = &val1
    p2 := &val2
    p3 := &val1

    // 使用 != 運(yùn)算符比較指針
    res1 := &p1 != &p2
    fmt.Println("p1指針不等于p2指針嗎: ", res1)

    res2 := p1 != p2
    fmt.Println("p1指針不等于p2指針嗎: ", res2)

    res3 := p1 != p3
    fmt.Println("p1指針不等于p3指針嗎: ", res3)

    res4 := p2 != p3
    fmt.Println("p2指針不等于p3指針嗎: ", res4)

    res5 := &p3 != &p1
    fmt.Println("p3指針不等于p1指針嗎: ", res5)
}

輸出:

p1指針不等于p2指針嗎:  true
p1指針不等于p2指針嗎:  true
p1指針不等于p3指針嗎:  false
p2指針不等于p3指針嗎:  true
p3指針不等于p1指針嗎:  true
丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清