Поделиться через


C6281

Обновлен: Ноябрь 2007

C6281

Предупреждение 6281. Некорректный порядок операций: операторы отношений имеют более высокий приоритет, чем битовые операторы

Данное предупреждение указывает на возможную ошибку приоритета операторов. Это может привести к неверным результатам. Следует проверить приоритет операторов и использовать скобки для более четкого указания порядка вычислений. Операторы отношения (<, >, <=, >=, ==, != ) имеют более высокий приоритет, чем побитовые операторы(& | ^).

Пример

Данное предупреждение создается в следующем коде:

#include <stdlib.h>
#define FORMAT 1
#define TYPE 2

void f(int input)
{
  if (FORMAT & TYPE != input)
  {
    // code...
  }
}

В следующем коде для устранения этого предупреждения используются скобки:

#include <stdlib.h>
#define FORMAT 1
#define TYPE 2

void f(int input)
{
  if ((FORMAT & TYPE) != input)
  {
    // code...
  }
}

См. также

Ссылки

Предупреждение компилятора (уровень 3) C4554