本文简要介绍rust语言中 i32.wrapping_shr
的用法。
用法
pub const fn wrapping_shr(self, rhs: u32) -> i32
Panic-free 按位 shift-right;产生 self >> mask(rhs)
,其中 mask
删除 rhs
的任何 high-order 位,这将导致移位超过类型的位宽。
请注意,这是不是与rotate-right相同;包装 shift-right 的 RHS 仅限于类型的范围,而不是从 LHS 移出的位返回到另一端。原始整数类型都实现了i32.rotate_right函数,这可能正是您想要的。
例子
基本用法:
assert_eq!((-128i32).wrapping_shr(7), -1);
assert_eq!((-128i16).wrapping_shr(64), -128);
相关用法
- Rust i32.wrapping_shl用法及代码示例
- 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_shr。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。