Defined in header
template< class T >
constexpr T bit_width(T x) noexcept;
x is not zero, calculates the number of bits needed to store the value
x, that is, 1 + floor(log
x is zero, returns zero.
This overload only participates in overload resolution if
T is an unsigned integer type (that is, unsigned char, unsigned short, unsigned int, unsigned long, unsigned long long, or an extended unsigned integer type).
 Return value
x is zero; otherwise, one plus the base-2 logarithm of
x, with any fractional part discarded.
This function is equivalent to return std::numeric_limits<T>::digits - std::countl_zero(x);.
|This section is incomplete|
Reason: no example
 See also
| counts the number of consecutive 0 bits, starting from the most significant bit |