C6315

警告 C6315:运算顺序不正确: 接位与的优先级高于按位或。 请使用括号明确指定优先级

此警告意味着测试上下文中的表达式同时包含按位与 (&) 和按位或 (|) 运算,但由于按位或运算居后而导致结果为常数。 应通过添加括号来阐明优先级。

示例

下面的代码生成此警告:

void f( int i )
{
  if ( i & 2 | 4 ) // warning
  {
    // code
  }
}

若要更正此警告,请如下面的代码所示添加括号:

void f( int i )
{
  if ( i & ( 2 | 4 ) )
  {
    // code
  }
}