The C++ standard references the C standard for this, see [c.limits]. LLONG_MAX
is defined in <climits>
with the same meaning as C's <limits.h>
's LLONG_MAX
. And this is what C has to say:
5.2.4.2.1 Sizes of integer types <limits.h>
The values given below shall be replaced by constant expressions suitable for use in #if
preprocessing directives. [...] Their implementation-defined values shall be equal or greater in magnitude (absolute value) to those shown, with the same sign.
[...]
-- maximum value for an object of type long long int
LLONG_MAX +9223372036854775807 //
263 -1
A signed type that must be capable of representing the value 9223372036854775807
requires 64 bits or more.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…