<stdckdint.h>はC23で追加された検査付き整数演算ライブラリをC++から使用するための互換ヘッダである。
C言語では型総称マクロ (type-generic macro) として提供される関数が、C++では関数テンプレートとして提供される。
このヘッダで宣言される関数およびマクロはstd名前空間に属さず、グローバル名前空間に定義される。C++の対応するヘッダとして<cstdckdint>は提供されない。これは、C言語との相互運用性を重視し、CとC++の両方でコンパイル可能なコードを記述できるようにするためである。
マクロ
| 名前 | 説明 | 対応バージョン |
|---|---|---|
__STDC_VERSION_STDCKDINT_H__ |
ヘッダのバージョン (202311L) |
C++26 |
検査付き整数演算
| 名前 | 説明 | 対応バージョン |
|---|---|---|
ckd_add |
検査付き整数の加算 (function template) | C++26 |
ckd_sub |
検査付き整数の減算 (function template) | C++26 |
ckd_mul |
検査付き整数の乗算 (function template) | C++26 |
バージョン
言語
- C++26
処理系
- Clang: 21 ✅
- GCC: 15 ✅
- Visual C++: 2026 Update 2 ❌