Rust 基础类型全解析
1. 整数类型
在 Rust 中,除了常见的整数类型,还有一些特殊的整数类型。“u” 字母是无符号(unsigned)的缩写,它后面的数字表示该类型使用的位数。例如,变量 “a” 使用 8 位,可以表示 256 个不同的值,作为无符号数,其取值范围是从 0 到 255(包含边界值)。
优先选择无符号数而非有符号数,还有一个原因。如果要检查有符号整数 x 是否在 0(包含)到正数值 n(不包含)之间,需要编写布尔表达式 0 <= x && x < n ;但如果 x 是无符号数,只需使用表达式 x < n 即可。
变量 “a”、“b”、“c”、“d” 和 “e” 有五种不同的类型,它们彼此不同,也与对应的有符号类型不同。
1.1 目标依赖的整数类型
到目前为止,我们已经了解了十种不同的整数类型,但 Rust 还有其他整数类型。当访问数组或向量中的元素时,索引应该使用什么类型呢?
可能会认为,如果数组较小,可以使用 i8 或 u8 ;如果数组稍大,则需要使用 i16 或 u16 。但实际上,作为数组或向量索引的最有效类型如下:
- 在 16 位计算机上,是无符号 16 位整数。
- 在 32 位计算机上,是无符号 32 位整数。
- 在 64 位计算机上,是无符号 64 位整数。
也就是说,数组或向量的索引应该是无符号的,并且其大小应与内
超级会员免费看
订阅专栏 解锁全文
1174

被折叠的 条评论
为什么被折叠?



