Namespaces
Variants

Bit manipulation (since C++20)

From cppreference.net
Utilities library

個々のビットおよびビットシーケンスへのアクセス、操作、処理を行うためのいくつかの関数テンプレートを提供します。

ヘッダーで定義 <bit>
名前空間 std で定義
(C++20)
ある型のオブジェクト表現を別の型のものとして再解釈する
(関数テンプレート)
(C++23)
指定された整数値のバイト順序を反転する
(関数テンプレート)

目次

2の整数乗
数値が2の整数乗であるかどうかをチェックする 2
(関数テンプレート)
(C++20)
指定された値以上の最小の2の整数乗を求める
(関数テンプレート)
(C++20)
指定された値以下の最大の 2 のべき乗を求める
(関数テンプレート)
(C++20)
指定された値を表現するために必要な最小ビット数を求める
(関数テンプレート)
回転
(C++20)
ビット単位の左回転の結果を計算する
(関数テンプレート)
(C++20)
ビット単位の右回転の結果を計算する
(関数テンプレート)
カウンティング
最上位ビットから開始して、連続する 0 ビットの数を数える
(関数テンプレート)
(C++20)
最上位ビットから開始して、連続する 1 ビットの数を数える
(関数テンプレート)
最下位ビットから開始して、連続する 0 ビットの数を数える
(関数テンプレート)
(C++20)
最下位ビットから開始して、連続する 1 ビットの数を数える
(関数テンプレート)
(C++20)
符号なし整数の 1 ビットの数を数える
(関数テンプレート)
エンディアン
(C++20)
スカラ型のエンディアンを示す
(enum)

注記

機能テスト マクロ 標準 機能
__cpp_lib_bit_cast 201806L (C++20) std::bit_cast
__cpp_lib_bitops 201907L (C++20) ビット操作
__cpp_lib_int_pow2 202002L (C++20) 整数の2のべき乗 2 操作
__cpp_lib_byteswap 202110L (C++23) std::byteswap

関連項目

C documentation for Bit manipulation