patterngoCritical
The maximum value for an int type in Go
Viewed 0 times
maximumtheintforvaluetype
Problem
How does one specify the maximum value representable for an
I would like to know how to initialize
so that the first time through the comparison,
unsigned integer type?I would like to know how to initialize
min in the loop below that iteratively computes min and max lengths from some structs.var minLen uint = ???
var maxLen uint = 0
for _, thing := range sliceOfThings {
if minLen > thing.n { minLen = thing.n }
if maxLen maxLen {
// If there are no values, clamp min at 0 so that min <= max.
minLen = 0
}so that the first time through the comparison,
minLen >= n.Solution
https://groups.google.com/group/golang-nuts/msg/71c307e4d73024ce?pli=1
The germane part:
Since integer types use two's complement arithmetic, you can infer the
min/max constant values for
As per @CarelZA's comment:
The germane part:
Since integer types use two's complement arithmetic, you can infer the
min/max constant values for
int and uint. For example,const MaxUint = ^uint(0)
const MinUint = 0
const MaxInt = int(MaxUint >> 1)
const MinInt = -MaxInt - 1As per @CarelZA's comment:
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 9223372036854775807Code Snippets
const MaxUint = ^uint(0)
const MinUint = 0
const MaxInt = int(MaxUint >> 1)
const MinInt = -MaxInt - 1uint8 : 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 9223372036854775807Context
Stack Overflow Q#6878590, score: 350
Revisions (0)
No revisions yet.