std::bitset<N>::to_ulong
Von de.cppreference.net
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 niederwertigsten Stelle der Zahl und das letzte Bit entspricht der höchstwertigen Stelle.
Rückgabewert
Die konvertierte Ganzzahl.
Ausnahmen
Wirft std::overflow_error, wenn der Wert in unsigned long nicht dargestellt werden kann.
Beispiel
Diesen Code ausführen
#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
Siehe auch
|
gibt eine Zeichenkettenrepräsentation der Daten zurück
(öffentliche Elementfunktion) |
|
|
(C++11)
|
gibt eine
unsigned
long
long
Integer-Repräsentation der Daten zurück
(öffentliche Elementfunktion) |