Golang指针初探

我去买个大橘子 · · 723 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

初次接触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指针初探

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

723 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传