Namespaces
Variants
Actions

Standard library header <stdbit.h> (C++26)

From cppreference.com
< cpp‎ | header
 
 
Standard library headers
 

This header was originally in the C standard library (<stdbit.h>).

This C-compatibility header is part of the general utility library, in particular, it provides several function templates to access, manipulate, and process individual bits and bit sequences. The byte ordering (endianness) of scalar types can be inspected via __STDC_ENDIAN_NATIVE__ facility.

It is unspecified whether <stdbit.h> provides any declarations in namespace std.


Contents

Functions

Constants

[edit]Synopsis

#define __STDC_VERSION_STDBIT_H__ 202311L   #define __STDC_ENDIAN_BIG__ /* see description */#define __STDC_ENDIAN_LITTLE__ /* see description */#define __STDC_ENDIAN_NATIVE__ /* see description */   unsignedint stdc_leading_zeros_uc(unsignedchar value);unsignedint stdc_leading_zeros_us(unsignedshort value);unsignedint stdc_leading_zeros_ui(unsignedint value);unsignedint stdc_leading_zeros_ul(unsignedlongint value);unsignedint stdc_leading_zeros_ull(unsignedlonglongint value);template<class T>/* see description */ stdc_leading_zeros(T value);   unsignedint stdc_leading_ones_uc(unsignedchar value);unsignedint stdc_leading_ones_us(unsignedshort value);unsignedint stdc_leading_ones_ui(unsignedint value);unsignedint stdc_leading_ones_ul(unsignedlongint value);unsignedint stdc_leading_ones_ull(unsignedlonglongint value);template<class T>/* see description */ stdc_leading_ones(T value);   unsignedint stdc_trailing_zeros_uc(unsignedchar value);unsignedint stdc_trailing_zeros_us(unsignedshort value);unsignedint stdc_trailing_zeros_ui(unsignedint value);unsignedint stdc_trailing_zeros_ul(unsignedlongint value);unsignedint stdc_trailing_zeros_ull(unsignedlonglongint value);template<class T>/* see description */ stdc_trailing_zeros(T value);   unsignedint stdc_trailing_ones_uc(unsignedchar value);unsignedint stdc_trailing_ones_us(unsignedshort value);unsignedint stdc_trailing_ones_ui(unsignedint value);unsignedint stdc_trailing_ones_ul(unsignedlongint value);unsignedint stdc_trailing_ones_ull(unsignedlonglongint value);template<class T>/* see description */ stdc_trailing_ones(T value);   unsignedint stdc_first_leading_zero_uc(unsignedchar value);unsignedint stdc_first_leading_zero_us(unsignedshort value);unsignedint stdc_first_leading_zero_ui(unsignedint value);unsignedint stdc_first_leading_zero_ul(unsignedlongint value);unsignedint stdc_first_leading_zero_ull(unsignedlonglongint value);template<class T>/* see description */ stdc_first_leading_zero(T value);   unsignedint stdc_first_leading_one_uc(unsignedchar value);unsignedint stdc_first_leading_one_us(unsignedshort value);unsignedint stdc_first_leading_one_ui(unsignedint value);unsignedint stdc_first_leading_one_ul(unsignedlongint value);unsignedint stdc_first_leading_one_ull(unsignedlonglongint value);template<class T>/* see description */ stdc_first_leading_one(T value);   unsignedint stdc_first_trailing_zero_uc(unsignedchar value);unsignedint stdc_first_trailing_zero_us(unsignedshort value);unsignedint stdc_first_trailing_zero_ui(unsignedint value);unsignedint stdc_first_trailing_zero_ul(unsignedlongint value);unsignedint stdc_first_trailing_zero_ull(unsignedlonglongint value);template<class T>/* see description */ stdc_first_trailing_zero(T value);   unsignedint stdc_first_trailing_one_uc(unsignedchar value);unsignedint stdc_first_trailing_one_us(unsignedshort value);unsignedint stdc_first_trailing_one_ui(unsignedint value);unsignedint stdc_first_trailing_one_ul(unsignedlongint value);unsignedint stdc_first_trailing_one_ull(unsignedlonglongint value);template<class T>/* see description */ stdc_first_trailing_one(T value);   unsignedint stdc_count_zeros_uc(unsignedchar value);unsignedint stdc_count_zeros_us(unsignedshort value);unsignedint stdc_count_zeros_ui(unsignedint value);unsignedint stdc_count_zeros_ul(unsignedlongint value);unsignedint stdc_count_zeros_ull(unsignedlonglongint value);template<class T>/* see description */ stdc_count_zeros(T value);   unsignedint stdc_count_ones_uc(unsignedchar value);unsignedint stdc_count_ones_us(unsignedshort value);unsignedint stdc_count_ones_ui(unsignedint value);unsignedint stdc_count_ones_ul(unsignedlongint value);unsignedint stdc_count_ones_ull(unsignedlonglongint value);template<class T>/* see description */ stdc_count_ones(T value);   bool stdc_has_single_bit_uc(unsignedchar value);bool stdc_has_single_bit_us(unsignedshort value);bool stdc_has_single_bit_ui(unsignedint value);bool stdc_has_single_bit_ul(unsignedlongint value);bool stdc_has_single_bit_ull(unsignedlonglongint value);template<class T>bool stdc_has_single_bit(T value);   unsignedint stdc_bit_width_uc(unsignedchar value);unsignedint stdc_bit_width_us(unsignedshort value);unsignedint stdc_bit_width_ui(unsignedint value);unsignedint stdc_bit_width_ul(unsignedlongint value);unsignedint stdc_bit_width_ull(unsignedlonglongint value);template<class T>/* see description */ stdc_bit_width(T value);   unsignedchar stdc_bit_floor_uc(unsignedchar value);unsignedshort stdc_bit_floor_us(unsignedshort value);unsignedint stdc_bit_floor_ui(unsignedint value);unsignedlongint stdc_bit_floor_ul(unsignedlongint value);unsignedlonglongint stdc_bit_floor_ull(unsignedlonglongint value);template<class T> T stdc_bit_floor(T value);   unsignedchar stdc_bit_ceil_uc(unsignedchar value);unsignedshort stdc_bit_ceil_us(unsignedshort value);unsignedint stdc_bit_ceil_ui(unsignedint value);unsignedlongint stdc_bit_ceil_ul(unsignedlongint value);unsignedlonglongint stdc_bit_ceil_ull(unsignedlonglongint value);template<class T> T stdc_bit_ceil(T value);

[edit]See also

(C++20)
Bit manipulation functions[edit]
close