美文网首页
Go 关于程序内存地址01--相同的值内存地址的问题

Go 关于程序内存地址01--相同的值内存地址的问题

作者: 品评 | 来源:发表于2019-03-16 11:19 被阅读0次

最近闲来无事.想深度了解一下变量在被编译后运行的地址的变化.闲话少说直接上干货.

package main

import (
    "fmt"
)

func main() {

    str01 := "This a String"
    str02 := "This a String"
    str03 := "This a String!"

    fmt.Printf("str01 %p \n",&str01)
    fmt.Printf("str02 %p \n",&str02)
    fmt.Printf("str03 %p \n",&str03)
    
    var str04 = "This a String"
    var str05 = str04
    var str06 = "This a String!"

    fmt.Printf("str01 %p \n",&str04)
    fmt.Printf("str02 %p \n",&str05)
    fmt.Printf("str03 %p",&str06)
    
}

输出结果

str01 0xc000082030 
str02 0xc000082040 
str03 0xc000082050 
str04 0xc0000101b0 
str05 0xc0000101c0 
str06 0xc0000101d0

结果表明.
str01 和 str02 运行后 内容一致.内存地址不一致.
str05 是 str04 赋值过去. 内容一致.内存地址不一致.

相关文章

  • Go 关于程序内存地址01--相同的值内存地址的问题

    最近闲来无事.想深度了解一下变量在被编译后运行的地址的变化.闲话少说直接上干货. 输出结果 结果表明.str01 ...

  • OBJC 关于程序内存地址01--相同的值内存地址的问题

    最近闲来无事.想深度了解一下变量在被编译后运行的地址的变化.闲话少说直接上干货. 输出结果 结果表明.str01 ...

  • Python查看内存地址

    使用id(变量名)获取变量内存地址。 值相同内存地址相同。

  • go内存地址

    go内存地址 内存地址在go中获得该变量的内存地址 用&a 首先声明了一个int类型的变量a,它的值为0,然后又声...

  • 【Golang进阶】指针的详细讲解

    指针是一个代表着某个内存地址的值, 这个内存地址往往是在内存中存储的另一个变量的值的起始位置. Go语言对指针的支...

  • GO语言基础(三)

    指针 Go 拥有指针。指针保存了值的内存地址。 类型 *T 是指向 T 类型值的指针。其零值为 nil。 & 操作...

  • Day03

    小知识点补充 比较变量内存地址和获取变量内存地址 小数据池 为了节省内存,当多个int或str类型的值相同时,且符...

  • iOS之LLDB常用命令

    打印值、修改值、调用方法 p、po 打印值po:输出值p:输出值+值类型+引用名+内存地址(xcode中有内存地址...

  • day02-13pointer

    指针(指向内存的地址) &:取内存地址 *:根据内存地址取值 vscode 不支持go module new 函数...

  • 六、Go指针

    六、Go语言指针 1.使用&访问变量在内存中地址 2.指针 一个指针变量指向一个值的内存地址。 与变量和常量相同,...

网友评论

      本文标题:Go 关于程序内存地址01--相同的值内存地址的问题

      本文链接:https://www.haomeiwen.com/subject/pbxbtqtx.html