다음을 통해 공유


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