本文介绍了动态初始化去数组大小的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试着写在旅途中的小应用程序,采用X的整数数量从标准输入,计算平均值,并给出了回去。我只是到目前为止得到:
I try to write a small application in go that takes 'x' numbers of integers from standard input, calculates the mean and gives it back. I have only gotten so far:
func main() { var elems, mean int sum := 0 fmt.Print("Number of elements? ") fmt.Scan(&elems) var array = new([elems]int) for i := 0; i < elems; i++ { fmt.Printf("%d . Number? ", i+1) fmt.Scan(&array[i]) sum += array[i]; }............当试图编译此,我得到了以下错误消息:
When trying to compile this I get the following error message:
无效的数组边界elems
invalid array bound elems
什么是错在这里?
推荐答案你应该使用一个切片:
//var array = new([elems]int) - no, arrays are not dynamic var slice = make([]int,elems) // or slice := make([]int, elems)请参阅去片的使用和内部
另外你可能想使用范围你的循环考虑:
Also you may want to consider using range for your loop:
// for i := 0; i < elems; i++ { - correct but less idiomatic for i, v := range slice {更多推荐
动态初始化去数组大小
发布评论