ゼロ除算
ゼロ除算の発生
説明
このチェックは、除算またはモジュラス演算の右側オペランドが 0 かどうかを判定します。
非有限の浮動小数点を許可しない
既定では、非有限の浮動小数点は許可されません。除算またはモジュラス演算に対するチェックは、次のように示されます。
演算でのすべての実行パスで右側オペランドが 0 の場合は、レッド。
一部の実行パスで右側オペランドが 0 の場合は、オレンジ。
右側オペランドを 0 にできない場合は、グリーン。
非有限の浮動小数点を許可する
無限大を組み込んだ検証モードを有効にし、無限大を許容する既定の設定のままにした場合は、浮動小数点のゼロ除算チェックが無効にされます。さらに、検証で無限大を生成する演算を禁止するように指定しているか、このような演算に関して警告するように指定している場合、浮動小数点のゼロ除算エラーはオーバーフローとして示されます。オーバーフロー
も参照してください。
この検証モードを有効にするには、以下のオプションを使用します。
無限大 (-check-infinite)
: 既定のモードのままにするか、引数[warn]
または[forbid]
を使用します。
このチェックの診断
例
チェック情報
グループ: 数値 |
言語: C | C++ |
頭字語: ZDV |