第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用數(shù)字文字但不使用數(shù)字常量的移位運(yùn)算符會出錯

使用數(shù)字文字但不使用數(shù)字常量的移位運(yùn)算符會出錯

Go
弒天下 2023-07-17 16:25:57
我在 go 中進(jìn)行移位操作時遇到錯誤,invalid operation: 1 << bucketCntBits (shift count type int, must be unsigned integer)嘗試在 go inside main()body 中聲明文字時出錯失敗文字示例:https://play.golang.org/p/EqI-yag5yPpfunc main() {    bucketCntBits := 3 // <---- This doesn't work    bucketCnt     := 1 << bucketCntBits    fmt.Println("Hello, playground", bucketCnt)}當(dāng)我將班次計數(shù)聲明為常量時,班次運(yùn)算符就起作用了。工作常量示例:https ://play.golang.org/p/XRLL4FR8ZElconst (    bucketCntBits = 3 // <---- This works)func main() {    bucketCnt     := 1 << bucketCntBits    fmt.Println("Hello, playground", bucketCnt)}為什么常量可以工作,而文字卻不能用于移位運(yùn)算符?
查看完整描述

3 回答

?
慕容3067478

TA貢獻(xiàn)1773條經(jīng)驗 獲得超3個贊

Go 1.13 發(fā)行說明(2019 年 9 月)

語言的變化

根據(jù)已簽名的班次計數(shù)提案,?Go 1.13 刪除了班次計數(shù)必須無符號的限制。此更改消除了對許多人工 uint 轉(zhuǎn)換的需要,這些轉(zhuǎn)換僅僅是為了滿足 << 和 >> 運(yùn)算符的此(現(xiàn)已刪除)限制而引入的。


invalid?operation:?1?<<?bucketCntBits?(shift?count?type?int,?must?be?unsigned?integer)

對于 Go 1.13(2019 年 9 月)及更高版本,這不再是錯誤。

你的例子,

package main


import "fmt"


func main() {

? ? bucketCntBits := 3

? ? bucketCnt := 1 << bucketCntBits

? ? fmt.Println(bucketCnt)

}

輸出:


$ go version

go version devel +66ff373911 Sat Aug 24 01:11:56 2019 +0000 linux/amd64


$ go run shift.go

8


查看完整回答
反對 回復(fù) 2023-07-17
?
慕標(biāo)5832272

TA貢獻(xiàn)1966條經(jīng)驗 獲得超4個贊

或者,您可以將類型uint8, uint16,uint32或強(qiáng)制轉(zhuǎn)換uint64為整數(shù)文字。例如,


func main() {

    bucketCntBits := uint32(3)

    bucketCnt     := 1 << bucketCntBits

    fmt.Println(bucketCnt)

}

輸出:


8


查看完整回答
反對 回復(fù) 2023-07-17
?
慕雪6442864

TA貢獻(xiàn)1812條經(jīng)驗 獲得超5個贊

使用math/bits包你可以做這樣的事情:


package main


import (

    "fmt"

    "math/bits"

)


func main() {

    bucketCntBits := 3

    bucketCnt     := bits.RotateLeft(1, bucketCntBits)

    fmt.Println("Hello, playground", bucketCnt)

}


https://play.golang.org/p/fVK2xysL896


查看完整回答
反對 回復(fù) 2023-07-17
  • 3 回答
  • 0 關(guān)注
  • 183 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號