go指针变量

变量分为普通变量和指针变量;普通变量存放的是数据本身,而指针变量存放的是数据的地址。
使用表达式 new(Type) 将创建一个Type类型的匿名变量,初始化为Type类型的零值,然后返回变量地址,返回的指针类型为*Type

package main

import "fmt"

func main()  {
    var age int = 28
    var ptr = &age  // &后面接变量名,表示取出该变量的内存地址
    fmt.Println("age: ", age)
    fmt.Println("ptr: ", ptr)

    //使用new函数声明一个指针变量
    ptr1 := new(int)
    //ptr := new(string)
    //ptr := new(bool)
    fmt.Println("ptr1 address: ", ptr1)
    fmt.Println("ptr1 value: ", *ptr1)  // * 后面接指针变量,表示从内存地址中取出值

    //对比new与传统方式创建变量的区别
    fmt.Println(aaa1,aaa2)
}

// 使用 new
func aaa1() *bool {
    return new(bool)
}

// 使用传统的方式
func aaa2() *int {
    var kkk int
    return &kkk
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值