本文简要介绍rust语言中 i32.wrapping_shl
的用法。
用法
pub const fn wrapping_shl(self, rhs: u32) -> i32
Panic-free 按位 shift-left;产生 self << mask(rhs)
,其中 mask
删除 rhs
的任何 high-order 位,这将导致移位超过类型的位宽。
请注意,这是不是与rotate-left相同;包装 shift-left 的 RHS 仅限于类型的范围,而不是从 LHS 移出的位返回到另一端。原始整数类型都实现了i32.rotate_left函数,这可能正是您想要的。
例子
基本用法:
assert_eq!((-1i32).wrapping_shl(7), -128);
assert_eq!((-1i32).wrapping_shl(128), -1);
相关用法
- Rust i32.wrapping_shr用法及代码示例
- Rust i32.wrapping_sub_unsigned用法及代码示例
- Rust i32.wrapping_sub用法及代码示例
- Rust i32.wrapping_rem用法及代码示例
- Rust i32.wrapping_add用法及代码示例
- Rust i32.wrapping_abs用法及代码示例
- Rust i32.wrapping_neg用法及代码示例
- Rust i32.wrapping_mul用法及代码示例
- Rust i32.wrapping_div用法及代码示例
- Rust i32.wrapping_add_unsigned用法及代码示例
- Rust i32.wrapping_pow用法及代码示例
- Rust i32.wrapping_div_euclid用法及代码示例
- Rust i32.wrapping_rem_euclid用法及代码示例
- Rust i32.saturating_mul用法及代码示例
- Rust i32.checked_log2用法及代码示例
- Rust i32.log10用法及代码示例
- Rust i32.overflowing_add用法及代码示例
- Rust i32.from_be用法及代码示例
- Rust i32.is_negative用法及代码示例
- Rust i32.checked_shr用法及代码示例
- Rust i32.checked_shl用法及代码示例
- Rust i32.saturating_add用法及代码示例
- Rust i32.checked_add_unsigned用法及代码示例
- Rust i32.checked_abs用法及代码示例
- Rust i32.log用法及代码示例
注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 i32.wrapping_shl。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。