次の方法で共有


C6314

警告 C6314: 操作の順序が不適切です: 条件式の演算子よりもビットごとの or が優先されます。 意思を明確にするためにかっこを追加してください

このメッセージは、ビットごとの OR 演算子 (|) を含む式が、テストされた条件演算 (?:) の式で検出されたことを示します。

条件演算子の優先順位は、ビットごとの演算子よりも下になります。 テストされた式にビットごとの OR 演算子を含める必要がある場合は、条件式をかっこで囲んでください。

使用例

この警告が発生するコード例を次に示します。

int SystemState();

int f(int SignalValue)
{
  return SystemState() | (SignalValue != 0) ? 1 : 0;
}

この警告を解決するには、次のコードを使用します。

int SystemState();

int f(int SignalValue)
{
  return SystemState() | ((SignalValue != 0) ? 1 : 0);
} 

参照

参照

Bitwise Inclusive OR Operator: |

Conditional Operator: ? :