1. 首页
  2. 主题
  3. Go问与答

哪位解答下 for 循环里面的语句展开的意思是啥

ccoding · · 1527 次点击
for i := 0; i < 8; i++ { buf = (buf << 8) | uint64(bitMap[i]) } 这是语法糖么?
stayfoo
stay hungry stay foolish
写个例子打印一下就出来了: ``` func main() { var buf int64 = 1 for i := 0; i &lt; 8; i++ { temp := buf &lt;&lt; 8 //左移:整型表达式&lt;&lt;整型表达式 buf = temp | int64(1) //按位或:整型表达式|整型表达式 fmt.Println(&#34;temp: &#34;,temp) fmt.Println(&#34; buf: &#34;,buf) } } ``` =============打印结果:=================================== ``` temp: 256 buf: 257 temp: 65792 buf: 65793 temp: 16843008 buf: 16843009 temp: 4311810304 buf: 4311810305 temp: 1103823438080 buf: 1103823438081 temp: 282578800148736 buf: 282578800148737 temp: 72340172838076672 buf: 72340172838076673 temp: 72340172838076672 buf: 72340172838076673 ```
#5
更多评论
这不是给buf赋值吗,你这给你不完整啊,buf和bitMap定义在哪里呢?
#1
这不就是个标准的for循环么? 然后给buf赋值啊
#2

用户登录

没有账号?注册

今日阅读排行

    加载中

一周阅读排行

    加载中