同一データでのビットごとの演算と算術演算です
ビット演算と算術演算が混在したステートメント
説明
この欠陥は、ビット演算と算術演算が同じ式で実行された場合に発生します。
リスク
ビット演算と算術演算が混在していても、コンパイルは "行われます"。ただし、このような混在した演算の結果には整数型のサイズが影響します。たとえば、特定のビット数の左シフト (<<) に相当する算術演算は、シフトする変数内のビット数に依存するため、そのデータ型の内部表現に依存します。ビット演算と算術演算が混在している場合は、同じ式で別々のターゲットに関する別々の結果が生成される可能性があります。
また、混在した演算は可読性と保守性も低下させます。
修正方法
ビット演算と算術演算を分離するか、各ステートメントにつき 1 種類の演算のみを使用します。
例
結果情報
| グループ: 適切な手法 |
| 言語: C | C++ |
| 既定値: オフ |
コマンド ライン構文: BITWISE_ARITH_MIX |
| 影響度: Low |
バージョン履歴
R2016b で導入