std::bitset<N>::to_ulong
Von cppreference.com
| unsigned long to_ulong() const |
(constexpr seit C++23) | |
Konvertiert den Inhalt des Bitsets in eine unsigned long-Ganzzahl.
Das erste Bit des Bitsets entspricht der niedrigstwertigen Ziffer der Zahl und das letzte Bit der höchstwertigen Ziffer.
Inhalt |
[bearbeiten] Parameter
(keine)
[bearbeiten] Rückgabewert
Die konvertierte Ganzzahl.
[bearbeiten] Ausnahmen
Wirft std::overflow_error, wenn der Wert nicht in unsigned long dargestellt werden kann.
[bearbeiten] Beispiel
Führen Sie diesen Code aus
#include <bitset> #include <iostream> #include <stdexcept> int main() { for (unsigned long i = 0; i < 10; ++i) { std::bitset<5> b(i); std::bitset<5> b_inverted = ~b; std::cout << i << '\t' << b << '\t' << b_inverted << '\t' << b_inverted.to_ulong() << '\n'; } std::cout << std::bitset<32>().to_string('-') << '\n'; try { std::bitset<128> x(42); std::cout << x.to_ulong() << '\n'; x.flip(); std::cout << x.to_ulong() << '\n'; // throws } catch (const std::overflow_error& ex) { std::cout << "ex: " << ex.what() << '\n'; } }
Mögliche Ausgabe
0 00000 11111 31 1 00001 11110 30 2 00010 11101 29 3 00011 11100 28 4 00100 11011 27 5 00101 11010 26 6 00110 11001 25 7 00111 11000 24 8 01000 10111 23 9 01001 10110 22 -------------------------------- 42 ex: bitset to_ulong overflow error
[bearbeiten] Siehe auch
| gibt eine Zeichenkettenrepräsentation der Daten zurück (public member function) | |
| (C++11) |
gibt eine unsigned long long-Ganzzahlrepräsentation der Daten zurück (public member function) |