-
연산자(Operators)와 우선순위C & C++ 2023. 1. 16. 19:28반응형SMALL
C/C++에서 연산자란, 값을 변경하거나, 계산하거나, 판단하기 위해 사용하는 이미 정의되어 있는 특별한 기호를 말합니다.
구분 연산자 산술 연산자 +, -, *, /, %, ++, -- 대입 연산자 =, +=, -=, *=, /=, %=, <<=, >>=, &=, |=, ~=, ^= 비교 연산자(관계 연산자) <, >, >=, <=, ==, != 논리 연산자 &&, ||, ! 삼항 연산자 (조건) ? (식1) : (식2); 비트 연산자 <<, >>, &, |, ~, ^ 산술 연산자
사칙 연산을 위해 사용되는 연산자입니다. 이중에서 %는 정수끼리 나누고 그 나머지만을 구하는 연산자 입니다. ++ 연산자는 1씩 증가시키는 연산자입니다. -- 는 1씩 감소시키는 연산자입니다. ++과 -- 대입 연산자없이 그 값이 변경되는것에 주의해야 합니다.
대입 연산자
대입 연산자를 기준으로 우변에 있는 내용을 좌변에 대입 시키는 연산자이며, 좌변에는 하나의 변수만 올 수 있습니다.
대입 연산자는 = 외에도 산술 연산자와 같이 쓰이는 산술 대입 연산자가 있습니다.
비교 연산자
비교 연산자 참 또는 거짓을 판단하기 위한 연산자입니다. 비교 연산자의 결과가 참 또는 거짓이 됩니다. 일반적으로 C/C++ 언어에서 0은 거짓이며 0이외의 값은 참으로 표현됩니다.
논리 연산자
&&는 AND(논리곱) 연산자로 좌항과 우항의 값이 전부 참인 경우에만 참이며, 그외에는 전부 거짓입니다.
||는 OR(논리합) 연산자로 좌항과 우항 둘중 하나의 값이 참이면 참이며, 좌,우항 둘다 거짓인 경우 거짓입니다.
!는 NOT(부정) 연산자로 현재의 참, 또는 거짓을 반전 시킵니다. 즉 참이면 거짓을, 거짓이면 참으로 나타냅니다.
삼항 연산자
제어문과 비슷한 형식이며, ? 기호 앞에 조건이 위치하며 조건이 참이면 식1을 수행하고, 거짓이면 식2를 수행합니다.
비트 연산자
비트 단위로 연산을 수행합니다. 예를들어,
int a = 1;
a = a << 2;a의 값 1을 왼쪽으로 2비트만큼 이동시키는 시프트 연산자 입니다.
비트 연산자 설명 << 시프트 연산자, 왼쪽으로 비트를 이동시킴, ex) a = a << 2; >> 시프트 연산자, 오른쪽으로 비트를 이동시킴, ex) a = a >> 2; & Bit AND연산자, 연산자 좌우의 값을 비트단위로 AND연산, ex) a = 4 & 2; | Bit OR연산자, 연산자 좌우의 값을 비트단위로 OR연산, ex) a = 4 | 2; ^ Bit XOR연산자, 연산자 좌우의 값을 비트단위로 XOR연산, ex) a = 2 ^ 1; ~ Bit NOT연산자, 연산자 우측의 값을 비트단위로 반전 시킴, ex) a = ~a; 연산자의 우선순위
우선순위 연산자 종류 1 () 2 단항 연산자, ++, --, !, ~, &, +, -, * 3 산술 연산자, *, /, %, +, - 4 시프트 연산자, <<, >> 5 비교 연산자, <, >, <=, >=, ==, != 6 비트 연산자, &, ^, | 7 논리 연산자, &&, || 8 삼항 연산자 (조건)?(식1):(식2) 9 대입 연산자, =, +=, -=, *= ... 10 쉼표(콤마) 연산자 , 위 연산자 우선 순위는 모두 외울 필요는 없습니다, 첫번째 ()소괄호 연산자가 최우선이다 라는 사실말 알고 있으면, 이것을 알면 연산자의 우선순위를 개발자가 원하는대로 조정할 수 있을것입니다. 하지만 시험을 대비하려면 외우시는게 좋습니다. 정보처리 기사등의 시험 문제에 무조건 한 문제는 출제됩니다.
반응형LIST'C & C++' 카테고리의 다른 글
반복문 (0) 2023.01.16 제어문 (0) 2023.01.16 변수와 상수 (0) 2023.01.16 Windows에서 C/C++ 개발 환경 만들기 (0) 2023.01.13 C/C++ 언어 기초 (0) 2023.01.13