在Go中将uint32转换为int

Bri*_*oyd 3 go

如何将其uint32转换为intGo?

一点点背景,我正在读取一个文件,这给了我一个像这样的字节数组的正确大小:

size := binary.BigEndian.Uint32(b[4:])
Run Code Online (Sandbox Code Playgroud)

但是,bufio.Discardfunc需要一个int.我能够使用fmt将大小转换为字符串,然后使用strconv将其转换为int.必须有一种更优雅的方式来做到这一点.

Ari*_*aco 9

只需使用int()强制转换功能


pet*_*rSO 6

Go编程语言规范

转换

转换是表单的表达式,T(x)其中T是一个类型, x是一个可以转换为类型的表达式T.

例如,

size := binary.BigEndian.Uint32(b[4:])
n, err := rdr.Discard(int(size))
Run Code Online (Sandbox Code Playgroud)