std::countr_zero - cppreference.com
提供: cppreference.com
<tbody> </tbody>
|
|
(C++20以上) | |
x の値の中の最下位ビット (右) からの連続する 0 のビットの数を返します。
このオーバーロードは、T が符号なし整数型 (すなわち unsigned char、 unsigned short、 unsigned int、 unsigned long、 unsigned long long、または拡張符号なし整数型) である場合にのみ、オーバーロード解決に参加します。
引数
戻り値
x の値の中の最下位ビットからの連続する 0 のビットの数。
例
#include <bit> #include <bitset> #include <cstdint> #include <initializer_list> #include <iostream> int main() { for (std::uint8_t i : { 0, 0b11111111, 0b00011100 }) { std::cout << "countr_zero(0b" << std::bitset<8>(i) << ") = " << std::countr_zero(i) << '\n'; } }
出力:
countr_zero(0b00000000) = 8 countr_zero(0b11111111) = 0 countr_zero(0b00011100) = 2