可以isize和USIZE有所不同呢?它们都可以用于内存大小、索引、偏移量。
既然usize用于数组,为什么我们不只有 usize
我是 Rust 的新手,所以这可能是一个基本问题。
更新:在 32 位系统上,它们都是 32 位长,在 64 位系统上它们都是 64 位长。与标志无关。
在32位的系统中,isize是相同的i32并且usize是相同的u32。在64位的系统中,isize是相同的i64并且usize是相同的u64。
usize 不能为负数,通常用于内存地址、位置、索引、长度(或大小!)。 isize 可以是负数,通常用于地址、位置、索引或长度的偏移。isize是基于体系结构的(例如 32 位/64 位)有符号(负/0/正)整数类型。
见这里:
原始类型大小
指针大小的有符号整数类型。
另见 std::isize 模块。
此原语的大小是引用内存中的任何位置所需的字节数。例如,在 32 位目标上,这是 4 个字节,在 64 位目标上,这是 8 个字节。
usize是基于架构的(例如 32 位/64 位)无符号(0/正)整数类型。
见这里:
原始类型使用
指针大小的无符号整数类型。
另见 std::usize 模块。
此原语的大小是引用内存中的任何位置所需的字节数。例如,在 32 位目标上,这是 4 个字节,在 64 位目标上,这是 8 个字节。
| 归档时间: |
|
| 查看次数: |
2154 次 |
| 最近记录: |