golang 我无法转换“0x000000800”

你好,我需要在转换此值“0x00000800”后输出1即使我将此值(“0x00000800”)转换为2048,也足够了。


fmt.Println(strconv.Itoa((0x00000800 >> 11) & 0x1F)) //working correctly

    

    //but my value comes as string

    src:= "0x00000800"

    fmt.Println(strconv.Itoa((src >> 11) & 0x1F)) //not working properly

https://gchq.github.io/CyberChef/#recipe=Convert_data_units('Bits%20(b)','Bits%20(b)')&input=MHgwMDAwMDgwMA


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


倚天杖
浏览 117回答 1
1回答

慕尼黑5688855

伊托阿不是你要找的package mainimport (    "fmt"    "strconv")func main() {    fmt.Println(strconv.Itoa((0x00000800 >> 11) & 0x1F)) //working correctly    //but my value comes as string    src := "0x00000800"    // src[2:]   removes 0x    // base 16 hexadecimal    // bit size of int to convert to    fmt.Println(strconv.ParseInt(src[2:], 16, 64))}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go