zoukankan      html  css  js  c++  java
  • Go_指针

    • Go 语言中的指针操作非常简单,我们只需要记住两个符号:&(取地址)和 *(根据地址取值)。
    • 每个变量在运行时都拥有一个地址,这个地址代表变量在内存中的位置。Go 语言中使用&字符 放在变量前面对变量进行取地址操作。
    • Go 语言中的值类型(int、float、bool、string、array、struct)都有对应的指针类型,如:*int、*int64、*string 等

    package main
    
    import "fmt"
    
    func main() {
        //1.定义指针 其实和PHP的&一样 都是修改的内存地址指定的值
        //aa(指针变量)表示指针的内存地址    *aa 表示获取指针对应的值
        // new方法给指针变量分配内存空间 返回的是指针类型数据
        var aa = new(int)
        fmt.Println(aa) //0xc00000a0b8
        *aa = 100
        fmt.Println(*aa) // 100
    
        /*错误写法 指针是引用数据类型
        var a *int
        *a = 1
        fmt.Println(*a)
        */
    
        //修正写法
        var b *int
        b = new(int)
        *b = 200
        fmt.Println(*b) // 200
    
        // 2.&获取变量的地址
        cc := 100
        bb := &cc        // &cc 表示获取cc的内存地址
        fmt.Println(bb)  //0xc00000a100
        fmt.Println(*bb) // 100
    
        //通过指针变量操作cc的值
        *bb = 200
        fmt.Println(cc) // 200
    
        //总结 &:取的是地址 *取的是值
    }
     
    注重细节——关注底层——注重细节——关注底层——注重细节——关注底层——注重细节——关注底层——注重细节——关注底层
  • 相关阅读:
    mybatis
    队列
    JDK中的Timer和TimerTask详解
    NIOGoodDemo
    24-C#笔记-异常处理
    23-C#笔记-正则表达式
    22-C#笔记-预编译指令
    21-C#笔记-名称空间
    20-C#笔记-接口
    19-C#笔记-多态性
  • 原文地址:https://www.cnblogs.com/PJG20/p/14584138.html
Copyright © 2011-2022 走看看