본문 바로가기

C/C++/C/C++일반

비트 연산자 우선순위

개발하다가 아래와 같은 경우에서 난 당연히 비트 연산자인 '&' 가 논리 연산자 '>' 보다 우선순위가 높을 거라 생각했다.


if( nStyle & 8 > 0 )

... 


그런데 비트연산자 '&' 보다 논리연산자 '>'가 우선 순위가 더 높았다.


 if( (nStyle & 8) > 0 ) <== 이렇게 고쳐야함!!


참 너무 당연히 알고 있다고 생각한 것들 중 이렇게 잘못 알고 있는게 있다는 것이 가끔씩 깜놀 할 때가 있다.


참고로 우선순위 정보 링크