如何指定可表示的最大值unsigned
整数类型?
我想知道如何初始化min
在下面的循环中,迭代计算某些结构的最小和最大长度。
var minLen uint = ???
var maxLen uint = 0
for _, thing := range sliceOfThings {
if minLen > thing.n { minLen = thing.n }
if maxLen < thing.n { maxLen = thing.n }
}
if minLen > maxLen {
// If there are no values, clamp min at 0 so that min <= max.
minLen = 0
}
这样第一次通过比较,minLen >= n
.
https://groups.google.com/group/golang-nuts/msg/71c307e4d73024ce?pli=1 https://groups.google.com/group/golang-nuts/msg/71c307e4d73024ce?pli=1
相关部分:
由于整数类型使用二进制补码算术,因此您可以推断
最小/最大常数值int
and uint
。例如,
const MaxUint = ^uint(0)
const MinUint = 0
const MaxInt = int(MaxUint >> 1)
const MinInt = -MaxInt - 1
根据 @CarelZA 的评论:
uint8 : 0 to 255
uint16 : 0 to 65535
uint32 : 0 to 4294967295
uint64 : 0 to 18446744073709551615
int8 : -128 to 127
int16 : -32768 to 32767
int32 : -2147483648 to 2147483647
int64 : -9223372036854775808 to 9223372036854775807
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)