Go中for循环中的多个变量

Spe*_*her 1 go

我试图在Go中用多个变量编写一个for循环.

来自javascript世界,我想实现这样的事情:

    var i = 10;
    var b = 2;
    for (var a = b; i; i /= 2, b *= b ) {
      // some code
    }
Run Code Online (Sandbox Code Playgroud)

我试过像这样的"原始翻译":

   i, b := 10, 2
   for a := b; i; i /= 2, b *= b {
      // some code
    }
Run Code Online (Sandbox Code Playgroud)

但它不起作用.什么是正确的语法?

非常感谢!

Leo*_*rea 5

在Go中,您可以在循环中执行多个变量赋值.

package main

func main() {
    var (
        i = 10
        b = 2
    )
    for a := b; i != 0; i, b = i/2, b*b {
      // some code
    }
}
Run Code Online (Sandbox Code Playgroud)