数组 – 在golang中通过引用传递数组
发布时间:2020-12-16 09:27:51 所属栏目:大数据 来源:网络整理
导读:我来自C背景并在C风格中传递数组导致错误. 请帮助 package mainimport "fmt"func f(a *int){ fmt.Println(a[1])}func main(){ var a [100]int a[1]=100 f(a)} Error ::不能在f的参数中使用a(type [100] int)作为类型* int 解决方法 正如其他人在评论中提到的
我来自C背景并在C风格中传递数组导致错误.
请帮助 package main import "fmt" func f(a *int){ fmt.Println(a[1]) } func main(){ var a [100]int a[1]=100 f(a) } Error ::不能在f的参数中使用a(type [100] int)作为类型* int 解决方法
正如其他人在评论中提到的那样,您可能希望使用切片而不是数组.切片已通过引用传递,因此无需指定指针.下面的make语句创建一个int片段(由数组支持).在下面的代码中,我给它的长度为2,容量为100,以满足您分配索引1的目标.
import ( "fmt" ) func f(a []int) { fmt.Println(a[1]) } func main() { a := make([]int,2,100) a[1] = 100 f(a) } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |