您当前的位置: 首页 > 

qq_34412985

暂无认证

  • 0浏览

    0关注

    1061博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

go语言获取变量的内存地址和变量交换值

qq_34412985 发布时间:2021-02-20 13:04:21 ,浏览量:0

package main

import "fmt"

func main(){

    var b int;

    b,a := 1,2;

    b,a=a,b;

    fmt.Println(b,a);

    fmt.Println(&b,&a);

}

2 1 0xc000012080 0xc000012088

可以通过 &i 来获取变量 i 的内存地址,例如:0xf840000040(每次的地址都可能不一样)。值类型的变量的值存储在栈中。

如果你想要交换两个变量的值,则可以简单地使用 a, b = b, a,两个变量的类型必须是相同。

空白标识符 _ 也被用于抛弃值,如值 5 在:_, b = 5, 7 中被抛弃。

_ 实际上是一个只写变量,你不能得到它的值。这样做是因为 Go 语言中你必须使用所有被声明的变量,但有时你并不需要使用从一个函数得到的所有返回值。

并行赋值也被用于当一个函数返回多个返回值时,比如这里的 val 和错误 err 是通过调用 Func1 函数同时得到:val, err = Func1(var1)。

关注
打赏
1653291990
查看更多评论
立即登录/注册

微信扫码登录

0.0793s