Namespaces
Variants

std::bitset<N>:: to_ullong

From cppreference.net
Utilities library
unsigned long long to_ullong ( ) const
(depuis C++11)
(constexpr depuis C++23)

Convertit le contenu du bitset en un unsigned long long entier.

Le premier bit du bitset correspond au chiffre le moins significatif du nombre et le dernier bit correspond au chiffre le plus significatif.

Table des matières

Paramètres

(aucun)

Valeur de retour

L'entier converti

Exceptions

std::overflow_error si la valeur ne peut pas être représentée dans unsigned long long .

Exemple

#include <bitset>
#include <iostream>
#include <limits>
int main()
{
    std::bitset<std::numeric_limits<unsigned long long>::digits> b
    (
        0x123456789abcdef0LL
    );
    std::cout << b << "  " << std::hex << b.to_ullong() << '\n';
    b.flip();
    std::cout << b << "  " << b.to_ullong() << '\n';
    std::bitset<std::numeric_limits<unsigned long long>::digits + 1> q{0};
    try
    {
        (~q).to_ullong(); // lève une exception
    }
    catch (const std::overflow_error& ex)
    {
        std::cout << "ex: " << ex.what() << '\n';
    }
}

Sortie :

0001001000110100010101100111100010011010101111001101111011110000  123456789abcdef0
1110110111001011101010011000011101100101010000110010000100001111  edcba9876543210f
ex: _Base_bitset::_M_do_to_ullong

Voir aussi

renvoie une représentation sous forme de chaîne des données
(fonction membre publique)
renvoie une représentation entière unsigned long des données
(fonction membre publique)