std::bitset::to_ullong y std::bitset::to_ulong en C++ STL

Conjunto de bits: un conjunto de bits es una array de bool, pero cada valor booleano no se almacena por separado, sino que el conjunto de bits optimiza el espacio de modo que cada bool ocupa solo 1 bit de espacio, por lo que el espacio ocupado por el conjunto de bits bs es menor que el de bool bs[N] y el vector bs(N). Sin embargo, una limitación del conjunto de bits es que N debe conocerse en el momento de la compilación, es decir, una constante (esta limitación no existe con el vector y la array dinámica)

std::conjunto de bits::to_ullong

Esta función convierte el contenido del conjunto de bits en un entero largo largo sin signo. El primer bit del conjunto de bits corresponde al dígito menos significativo del número y el último bit corresponde al dígito más significativo.

Sintaxis:

bit.to_ullong()

Aquí bit es un número en bits (es decir, 101 por 5)

    Parámetros:

  • No estamos pasando ningún parámetro.
  • Devolver:

  • Devuelve el entero convertido.
  • Excepciones:

  • overflow_error ocurrirá si el valor no se puede representar en unsigned long long.

Ejemplos:

Input : 1010
Output : 10
Input : 10000001
Output :129

# CÓDIGO 1 :

#include <bitset> 
#include <iostream> 
#include <limits> 
using namespace std; 
  
int main() 
{ 
    bitset<numeric_limits<unsigned long long>::digits> b(10); 
  
    cout << b << endl << b.to_ullong();
  
    return 0; 
}
  
//Code is improved by Rajnis09

PRODUCCIÓN:

0000000000000000000000000000000000000000000000000000000000001010  
10

# CÓDIGO 2 :

#include <bitset>
#include <iostream>
#include <limits>
using namespace std;
  
int main()
{
    bitset<numeric_limits<unsigned long long>::digits> b(20);
  
    cout << b << endl << b.to_ullong();
  
    return 0;
}

PRODUCCIÓN:

0000000000000000000000000000000000000000000000000000000000010100 
20

std::conjunto de bits::to_ulong

Esta función convierte el contenido del conjunto de bits en un entero largo sin signo. El primer bit del conjunto de bits corresponde al dígito menos significativo del número y el último bit corresponde al dígito más significativo.

Sintaxis:

bit.to_ulong()

Aquí bit es un número en bits (es decir, 101 por 5)

Parámetros:

  • No estamos pasando ningún parámetro.
  • Devolver:

  • Devuelve el entero convertido.
  • Excepciones asociadas:

  • overflow_error ocurrirá si el valor no se puede representar en unsigned long.
  • Ejemplos:

    Input : 1010
    
    Output : 10
    
    Input : 10000001
    Output :129
    

    # CÓDIGO 1 :

    #include <bitset>
    #include <iostream>
    #include <limits>
    using namespace std;
      
    int main()
    {
        bitset<numeric_limits<unsigned long>::digits> b(10);
      
        cout << b << endl << b.to_ulong();
      
        return 0;
    }
    

    PRODUCCIÓN:

    0000000000000000000000000000000000000000000000000000000000001010  
    10
    

    # CÓDIGO 2 :

    #include <bitset>
    #include <iostream>
    #include <limits>
    using namespace std;
      
    int main()
    {
        bitset<numeric_limits<unsigned long>::digits> b(20);
      
        cout << b << endl << b.to_ulong();
      
        return 0;
    }
    

    PRODUCCIÓN:

    0000000000000000000000000000000000000000000000000000000000010100 
    20
    

    Publicación traducida automáticamente

    Artículo escrito por pawan_asipu y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *