回答

收藏

go中动态初始化数组大小

技术问答 技术问答 211 人阅读 | 0 人回复 | 2023-09-12

我尝试在 go从标准输入中编写一个小应用程序x计算平均值并返回整数。我只得到了这么远:
1 U- Y+ h0 P0 C6 W$ q3 L
    ) J. _" X: Z5 \7 }& P  U
  • func main() {var elems,mean intsum := 0fmt.Print("Number of elements? ")fmt.Scan(&elems)var array = new([elems]int)for i := 0; i 当我试图编译它时,我收到了以下错误信息:* f8 b1 S- b9 b9 r+ J
  • 无效数组绑定元素
    9 [0 O! u, ~/ n7 w, s$ T
  • 这里有什么问题?" m% A0 R3 _2 U6 v9 ^$ g1 l
  •                                                                ' i- e  e# X7 d" z0 b# i
  •     解决方案:                                                               7 d% x: ^, }  J. M  O: Y, X
  •                                                                 切片而非数组:[code]//var array = new([elems]int) - no,arrays are not dynamicvar slice = make([]int,elems) // or slice := make([]int,elems)
    % ~" O, l9 Y/ _) h9 Z
此外,您可能需要考虑回收范围:% h7 x+ v7 H; G2 c
    // for i := 0; i < elems; i   { - correct but less idiomaticfor i,v := range slice {
    - Q9 N! M# j1 Y
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则