Next: Floating-point type, Previous: Signed integer types, Up: Primitive types [Contents]

There are five primitive unsigned integer types: `uint`

, `uint8`

,
`uint16`

, `uint32`

and `uint64`

.

Except for `uint`

, the width in bits of each of these types is given by
the numeric suffix in its name.

The width in bits of `uint`

is implementation defined, but must be at
least 32-bits.
It must be equal to the width of the type `int`

.

Values of the type `uint8`

must be in the range *0* (*2^0 - 1*)
to *255* (*2^8 - 1*), both inclusive.

Values of the type `uint16`

must be in the range *0* (*2^0- 1*)
to *65535* (*2^16 - 1*), both inclusive.

Values of the type `uint32`

must be in the range *0* (*2^0 - 1*)
to *4294967295* (*2^32 - 1*), both inclusive.

Values of the type `uint64`

must be in the range *0* (*2^0 - 1*)
to *18446744073709551615* (*2^64 - 1*), both inclusive.

Values of the type *uint* must be in the range *0* (*2^0 - 1*) to
*2^N - 1*, both inclusive; *N* being the width of `uint`

in bits.