go语言中[]*int和*[]int的具体使用

作者:别人家的孩子zyh 时间:2024-05-29 22:08:38 

[]*int是一个指向指针的切片,本质上是切片,只不过切片里面存放的元素是指针;
*[]int是一个指向切片的指针,本质上是指针,可以用*来获取切片;

简易记法:从右往左读,最后一个符号是[],说明是切片,倒数第二个符号是*说明切片里是指针;从右往左读,最后一个符号是*,说明是指针,倒数第二个符号是[]说明指针指向一个切片类型。

对于[]*int,可以使用for _, ptr := range slice获得切片里面的指针,并通过*ptr得到切片里的元素(本质上是指针/地址)对应的值。
对于*[]int,可以使用*slice获得整个切片。

[]*int

func main() {
    var a = 1
    var b = 2
    var slice []*int
    slice = append(slice, &a)
    slice = append(slice, &b)
    for _, ptr := range slice {
        fmt.Print(*ptr, " ")
    }
}

输出:1 2 

*[]int

func main() {
    var a = 1
    var b = 2
    var slice *[]int
    arr := []int{a, b}
    slice = &arr
    fmt.Println(*slice)
}

输出:[1 2]

来源:https://blog.csdn.net/weixin_46529397/article/details/129882055

标签:go语言,[],int,[]int
0
投稿

猜你喜欢

  • 15条JavaScript最佳实践小结

    2024-04-29 13:37:25
  • GPU状态监测 nvidia-smi 命令的用法详解

    2022-08-28 20:57:37
  • python中的生成器、迭代器、装饰器详解

    2022-03-01 20:36:46
  • MySQL临时表的使用方法详解

    2024-01-23 15:13:51
  • python实现画出e指数函数的图像

    2023-09-24 22:12:10
  • sql server如何去除数据中的一些无用的空格

    2024-01-18 02:22:22
  • asp如何定时执行约定的页面?

    2009-11-15 20:17:00
  • 教你用python实现自动回复QQ消息(不到60行)

    2021-05-17 06:19:20
  • Python LeNet网络详解及pytorch实现

    2021-11-15 01:19:17
  • PHP array_key_exists检查键名或索引是否存在于数组中的实现方法

    2024-05-05 09:18:55
  • python列表中常见的一些排序方法

    2023-08-17 08:48:45
  • Python开发的HTTP库requests详解

    2021-09-06 19:08:09
  • 一文详解Python中复合语句的用法

    2021-08-11 23:15:40
  • SQLSERVER Pager store procedure分页存储过程

    2024-01-23 00:05:30
  • Python实战之制作天气查询软件

    2022-09-21 09:00:20
  • vue parseHTML源码解析hars end comment钩子函数

    2024-06-05 15:29:14
  • Python OpenCV实现3种滤镜效果实例

    2021-06-04 10:20:27
  • NumPy进行统计分析

    2023-09-21 00:16:15
  • 有趣的python小程序分享

    2023-11-27 20:31:55
  • python绘制简单直方图的方法

    2023-06-23 19:54:50
  • asp之家 网络编程 m.aspxhome.com