Golang指针初探

初次接触Golang语言,对Go的了解暂时还比较局限。
在这里对Go指针进行了简单学习,感觉跟之前学的C指针是差不多的。

Go 语言的取地址符是 &,放到一个变量前使用就会返回相应变量的内存地址。
在地址前加上*则是取相应地址相关值的操作。

练习代码如下:

package main

import "fmt"

func main() {
    var a int = 10
    var b string = "hello world"
    var c bool = true
    var d float32 = 0.002
    var e float64 = 0.00000003
    fmt.Printf("a变量的地址: %x,a的值为:%d\n", &a,*&a)
    fmt.Printf("变量的地址: %x\n", &b)
    fmt.Printf("变量的地址: %x\n", &c)
    fmt.Printf("变量的地址: %x\n", &d)
    fmt.Printf("变量的地址: %x\n", &e)

    var x int = 100
    var y int = 10
    swap(&x,&y)
    fmt.Printf("x=%d,y=%d",x,y)
}
 /*利用指针交互xy值 */
func swap(x *int, y *int) {
    var temp int
    temp = *x    /* 保存 x 地址的值 */
    *x = *y      /* 将 y 赋值给 x */
    *y = temp    /* 将 temp 赋值给 y */
 }

Log:


1530808982516.jpg

目前对Go语言的了解还非常有限,希望我也能一步步学习积累成为江湖中的大神吧!哈哈

你可能感兴趣的:(Golang指针初探)