산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C 연산자 우선순위와 결합 규칙 완벽 이해하기

연산자 우선순위

연산자 우선순위는 표현식에 둘 이상의 연산자가 있을 때 어떤 연산자가 먼저 실행되는지 결정합니다.

예시를 들어보겠습니다:

 int x = 5 - 17 * 6;

C에서 *의 우선순위는 -와 =보다 높습니다. 따라서 17 * 6이 먼저 평가됩니다. 그런 다음 - 연산이 평가되는데, -의 우선순위가 =보다 높기 때문입니다.

높은 우선순위에서 낮은 우선순위로 연산자 우선순위와 결합 규칙 표입니다. 결합 규칙(associativity) 속성은 잠시 후 논의하겠습니다.

연산자 우선순위 및 결합 규칙 표

연산자 의미 결합 규칙
() [] -> . 함수 호출
배열 요소 참조
간접 멤버 선택
직접 멤버 선택
왼쪽에서 오른쪽
! ~ + - ++ -- & * sizeof (type) 논리 부정
비트(1의 보수) 보수
단항 플러스
단항 마이너스
증가
감소
역참조(주소)
포인터 참조
객체 크기 반환
타입 캐스트(변환)
오른쪽에서 왼쪽
* / % 곱셈
나눗셈
나머지
왼쪽에서 오른쪽
+ - 이항 플러스(덧셈)
이항 마이너스(뺄셈)
왼쪽에서 오른쪽
<< >> 왼쪽 시프트
오른쪽 시프트
왼쪽에서 오른쪽
< <= > >= 보다 작음
작거나 같음
보다 큼
크거나 같음
왼쪽에서 오른쪽
== != 같음
다름
왼쪽에서 오른쪽
& 비트 AND 왼쪽에서 오른쪽
^ 비트 배타적 OR 왼쪽에서 오른쪽
| 비트 OR 왼쪽에서 오른쪽
&& 논리 AND 왼쪽에서 오른쪽
|| 논리 OR 왼쪽에서 오른쪽
?: 조건 연산자 오른쪽에서 왼쪽
= *= /= %= += -= &= ^= |= <<= >>= 단순 대입
곱셈 대입
나눗셈 대입
나머지 대입
합 대입
차 대입
비트 AND 대입
비트 XOR 대입
비트 OR 대입
왼쪽 시프트 대입
오른쪽 시프트 대입
오른쪽에서 왼쪽
, 표현식 구분자 왼쪽에서 오른쪽

연산자 결합 규칙

연산자 결합 규칙은 표현식이 평가되는 방향을 결정합니다. 예를 들어,

 b = a;

여기서 a의 값이 b에 할당되고, 그 반대는 아닙니다. = 연산자의 결합 규칙이 오른쪽에서 왼쪽이기 때문입니다.

또한 동일한 우선순위(우선순위)를 가진 두 연산자가 있는 경우 결합 규칙이 실행 방향을 결정합니다.

예시를 들어보겠습니다:

 1 == 2 != 3

여기서 연산자 ==와 !=는 동일한 우선순위를 가집니다. 그리고 이들의 결합 규칙은 왼쪽에서 오른쪽입니다. 따라서 1 == 2가 먼저 실행됩니다.

위의 표현식은 다음과 동일합니다:

 (1 == 2) != 3

참고: 문장에 여러 연산자가 있는 경우 괄호 ()를 사용하여 코드를 더 읽기 쉽게 만들 수 있습니다.

목차


C 언어

  1. C# 인터페이스 마스터하기: 정의, 구현, 실전 활용 사례
  2. C# 배열 마스터하기: 선언, 초기화, 정수 컬렉션 다루기
  3. C언어 realloc() 활용법: 문법, 모범 사례, 실전 예제
  4. C++ 생성자: 기본 인자로 유연한 객체 생성하기
  5. C++ 프렌드 함수와 프렌드 클래스: 접근 제어 마스터하기
  6. C++ 배열 완전 정복: 선언, 초기화, 포인터 기법
  7. C 함수 마스터: 재귀(Recursion) & 인라인(Inline) 기법 실전 예제
  8. C++ 동적 배열 할당 완벽 가이드: new, delete, 실전 코드 예제
  9. C# vs C++: 기능, 성능, 용도 비교 분석
  10. C언어 strlen() vs sizeof(): 차이점 이해와 올바른 사용법