From cppreference.com
Provides several function templates to access, manipulate, and process individual bits and bit sequences.
Defined in header
Defined in namespace std
(C++20)
reinterpret the object representation of one type as that of another
(function template)
(C++23)
reverses the bytes in the given integer value
(function template)
Integral powers of 2
(C++20)
checks if a number is an integral power of 2
(function template)
(C++20)
finds the smallest integral power of 2 not less than the given value
(function template)
(C++20)
finds the largest integral power of 2 not greater than the given value
(function template)
(C++20)
finds the smallest number of bits needed to represent the given value
(function template)
Shifting (since C++29)
(C++29)
shifts to the left without the possibility of undefined behavior
(function template)
(C++29)
shifts to the right without the possibility of undefined behavior
(function template)
Rotating
(C++20)
computes the result of bitwise left-rotation
(function template)
(C++20)
computes the result of bitwise right-rotation
(function template)
Counting
(C++20)
counts the number of consecutive 0 bits, starting from the most significant bit
(function template)
(C++20)
counts the number of consecutive 1 bits, starting from the most significant bit
(function template)
(C++20)
counts the number of consecutive 0 bits, starting from the least significant bit
(function template)
(C++20)
counts the number of consecutive 1 bits, starting from the least significant bit
(function template)
(C++20)
counts the number of 1 bits in an unsigned integer
(function template)
Permutation (since C++29)
(C++29)
reverses the bits in an integer
(function template)
(C++29)
repeats/broadcasts a bit pattern of specified length
(function template)
(C++29)
compresses bits of an operand using a mask (PEXT)
(function template)
(C++29)
expands bits from an operand using a mask (PDEP)
(function template)
Endian
(C++20)
indicates the endianness of scalar types
(enum)
Notes
macro ValueStdFeature
(C++20)std::bit_cast
(C++20)Bit operations
(C++29)
(C++29)
(C++23)std::byteswap
(C++20)
Integral power-of-2 operations
(C++26)Compatibility header
for C bitwise operations See also