ckd_mul
From cppreference.com
| ヘッダ <stdckdint.h> で定義 |
||
| #define ckd_mul( result, a, b ) /* 実装定義 */ // 公開インターフェース |
(C23以降) | |
x × y の乗算を計算し、結果を *result に格納します。乗算は、両方のオペランドが無限範囲の符号付き整数型で表現され、その結果がこの整数型から type1 に変換されたかのように実行されます。 *result に代入された値が演算の数学的な結果を正しく表している場合は、 false を返します。それ以外の場合は、 true を返します。この場合、 *result に代入された値は、演算の数学的な結果が *result の幅に合わせてラップアラウンドされたものです。
目次 |
[編集] パラメータ
| a, b | - | 整数値 |
| 結果 | - | 結果を格納する場所のアドレス |
[編集] 戻り値
false: *result に代入された値が乗算の数学的な結果を正しく表している場合。true: それ以外の場合。
[編集] 注記
type2 および type3 は、「プレーン」な char、 bool、ビット精度整数型、または列挙型以外の任意の整数型である必要があり、それらは同じであっても構いません。*result は、「プレーン」な char、 bool、ビット精度整数型、または列挙型以外の任意の整数型の変更可能な左辺値である必要があります。
type2 または type3 が適切な整数型でない場合、または *result が適切な整数型の変更可能な左辺値でない場合は、診断メッセージを生成することが推奨されます。
[編集] 例
| このセクションは未完成です 理由: 例がありません |
[編集] 参考文献
- C23標準 (ISO/IEC 9899:2024)
- 7.20.1 ckd_ チェック付き整数演算マクロ (p: 311)
[編集] 関連項目
| (C23) |
2つの整数に対するチェック付き加算 (型総称関数マクロ) |
| (C23) |
2つの整数に対するチェック付き減算 (型総称関数マクロ) |