go指针

go指针跟c语言里的指针类似
go函数可以返回局部变量的地址。
func fun() *int{
    m := 1
    return &m
}

var p = fun()
fmt.Println(fun() == p)        //false


var n = flag.Bool("n", false,"newline")
var sep = flag.String("s", " ", "separator")

func main(){
    flag.Parse()
    fmt.Print(strings.Join(flag.Args(), *sep))
    if !*n{
        fmt.Println()
    }
}

dup1.exe -help

Usage of dup1.exe:
  -n    newline
  -s string
        separator (default " ")

new函数:
p := new(int)        //int*类型p,指向未命名的int变量

new函数可以创建未命名的类型变量。

下面两个函数具有同样的行为:
func GetIntPtr() *int{
    return new(int)
}

func GetPtr() *int{
    var r int
    return &r
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值