Namespaces
Variants

std:: countr_zero

From cppreference.net
Utilities library
Definido en el encabezado <bit>
template < class T >
constexpr int countr_zero ( T x ) noexcept ;
(desde C++20)

Devuelve el número de bits consecutivos 0 en el valor de x , comenzando desde el bit menos significativo ("derecha").

Esta sobrecarga participa en la resolución de sobrecarga solo si T es un tipo entero sin signo (es decir, unsigned char , unsigned short , unsigned int , unsigned long , unsigned long long , o un tipo entero sin signo extendido).

Contenidos

Parámetros

x - valor de tipo entero sin signo

Valor de retorno

El número de bits consecutivos 0 en el valor de x , comenzando desde el bit menos significativo.

Notas

Macro de prueba de características Valor Std Característica
__cpp_lib_bitops 201907L (C++20) Operaciones de bits

Ejemplo

#include <bit>
#include <bitset>
#include <cstdint>
#include <iostream>
int main()
{
    for (const std::uint8_t i : {0, 0b11111111, 0b00011100, 0b00011101})
        std::cout << "countr_zero( " << std::bitset<8>(i) << " ) = "
                  << std::countr_zero(i) << '\n';
}

Salida:

countr_zero( 00000000 ) = 8
countr_zero( 11111111 ) = 0
countr_zero( 00011100 ) = 2
countr_zero( 00011101 ) = 0

Véase también

cuenta el número de bits consecutivos 0 , comenzando desde el bit más significativo
(plantilla de función)
(C++20)
cuenta el número de bits consecutivos 1 , comenzando desde el bit más significativo
(plantilla de función)
(C++20)
cuenta el número de bits consecutivos 1 , comenzando desde el bit menos significativo
(plantilla de función)
(C++20)
cuenta el número de bits 1 en un entero sin signo
(plantilla de función)
verifica si todos, alguno o ninguno de los bits están establecidos en true
(función miembro pública de std::bitset<N> )