The unsigned integer types consist of:
Type | Minimum | Maximum |
---|---|---|
u8 |
0 | 28-1 |
u16 |
0 | 216-1 |
u32 |
0 | 232-1 |
u64 |
0 | 264-1 |
u128 |
0 | 2128-1 |
The signed two's complement integer types consist of:
Type | Minimum | Maximum |
---|---|---|
i8 |
-(27) | 27-1 |
i16 |
-(215) | 215-1 |
i32 |
-(231) | 231-1 |
i64 |
-(263) | 263-1 |
i128 |
-(2127) | 2127-1 |
The IEEE 754-2008 "binary32" and "binary64" floating-point types are f32
and f64
, respectively.
The usize
type is an unsigned integer type with the same number of bits as the platform's pointer type. It can represent every memory address in the process.
The isize
type is a signed integer type with the same number of bits as the platform's pointer type. The theoretical upper bound on object and array size is the maximum isize
value. This ensures that isize
can be used to calculate differences between pointers into an object or array and can address every byte within an object along with one byte past the end.
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/reference/types/numeric.html