D プログラムでは、次の表に示す二項算術演算子を使用できます。これらの演算子で整数を操作したときの効果は、ANSI-C の場合と同じです。
表 2–6 D の二項算術演算子
+ |
整数の加算 |
- |
整数の減算 |
* |
整数の乗算 |
/ |
整数の除算 |
% |
整数の剰余演算 |
D の算術演算は、整数オペランドかポインタに対してのみ実行できます (第 5 章ポインタと配列を参照)。D プログラムの浮動小数点オペランドに対して、算術演算を実行することはできません。DTrace 実行環境は、整数のオーバーフローまたはアンダーフローに対して、何の処理も行いません。整数のオーバーフロー、アンダーフローについては、状況に応じてユーザー自身が確認する必要があります。
DTrace 実行環境では、/ 演算子や % 演算子の誤用によるゼロ除算エラーが自動的に検査され、報告されます。D プログラムで無効な除算が実行されると、その影響を受ける計測機能が自動的に無効化され、エラーが報告されます。DTrace でエラーが検出されても、その他の DTrace ユーザーやオペレーティングシステムカーネルに悪影響が及ぶことはありません。したがって、エラーのある D プログラムを不注意で作成してしまったとしても、障害の起きる心配はありません。
上記の二項演算子のほかに、+ と - を単項演算子として使用することもできます。この 2 つの演算子は、どの二項算術演算子よりも優先されます。D の演算子の優先順位と結合規則については、表 2–11 を参照してください。優先順位を制御したい場合は、式を丸括弧 ( ) で囲んでグループ化します。