数组 – 在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)
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
