douchungu0859 2017-09-30 06:42
浏览 81
已采纳

如何在GoLang中的init中声明两个变量? [重复]

This question already has an answer here:

when i write:

package main

import (
    "fmt"
)

func Sqrt(x float64) float64 {
    var ret float64

    for z := 1.0, n := 0;n < 10;n++ {
        ret = z - (z*z - x) / 2*z
    }
    return ret
}

func main() {
    fmt.Println(Sqrt(2))
}

syntax error: z := 1.0, n used as value. and bring

z := 1.0

out of the for block below

package main

import (
    "fmt"
)

func Sqrt(x float64) float64 {
    var ret float64
    z := 1.0
    for n := 0;n < 10;n++ {
        ret = z - (z*z - x) / 2*z
    }
    return ret
}

func main() {
    fmt.Println(Sqrt(2))
}

it's ok so how can i define two variables in init of the for block?

</div>
  • 写回答

1条回答 默认 最新

  • dongren2128 2017-09-30 06:57
    关注

    A For clause has an Init Statement which is a Simple Statement, including only one Assigment

    So in your case, you cannot declare multiple variable with different type/values. You could use a tuple assignment though

    for z, n := 1.0, 0; n < 10; n++ {
    

    (playground)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 关于大棚监测的pcb板设计
  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用
  • ¥15 C++ yoloV5改写遇到的问题
  • ¥20 win11修改中文用户名路径
  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥15 帮我写一个c++工程