1. 연산자
1)
*연산자
: 임의의 자료에 대해 각종 연산을 수행하도록 하는 기호.
산술 연산자 : + - * / % ++ --
관계 연산자 : > < >= <= == !=
논리 연산자 : & || !
대입 연산자 : += -= *= /= %= <<= >>= != &=
조건 연산자 : ?:
비트 연산자 : & | ^ ~ << >>
기타 연산자 : sizeof() cast & *
(1)산술 연산자
: 피 연산자에 대해 사칙연산을 포함한 각종 산술 연산을 수행하는 연산자
①이항 연산자 : 2개의 자료를 대상으로 산술적인 처리를 수행하는 연산자
[+ - * / ] : 가/감/승/제 (ex: i+5)
[%] : 나눗셈의 나머지 계산 (ex: i%5)
② 단항 연산자 : 1개의 자료만을 대상으로 산술적인 처리를 수행하는 연산자
[-] : 부호의 반전 (ex: -50)
[++] : 1 증가 (ex: i++, ++i --- 앞이든 뒤든 순서대로 계산함)
[--] : 1 감소 (ex: i--, --i)
(2) 관계 연산자
: 피 연산자에 대한 대, 소관계를 비교하는 연산자
[==] : 같은가의 여부를 비교 (ex: a==b ---> a와b는같다.)
[!=] : 다른가의 여부를 비교 (ex: a!=b ---> a와b는같지않다.)
[ > >= < <= ] : 대,소관계 비교 (ex: a>=b ---> a는b보다크거나같다.)
(3) 논리 연산자
: 피 연산자에 대해 논리연산을 수행하는 연산자
[&&] : 논리곱 (AND) 양쪽 모두 참일 때만 사용 (ex: a&&b )
[ || ] : 논리합 (OR) 양쪽 중 하나라도 참이면 참 (ex: a||b )
[!] : 논리부정 (NOT) 오른쪽이 참이면 거짓, 거짓이면 참 (ex: !a )
(4) 대입연산자
: 연산자의 오른쪽을 왼쪽에 대입
[=] 예: a=5 → a에 5를 대입
[+=] 예: a+=5 → a=a+5 →→ a에 5를 더한 후 결과를 a에 대입
[-=] 예: a-=5 → a=-5 →→ a에 5를 빼고 결과를 a에 대입
[*=] 예: a*=5 → a=a*5 →→ a에 5를 곱한 후 결과를 a에 대입
[/=] 예: a/=5 → a=a/5 →→ a에 5를 나눈 후 결과를 a에 대입
[%=] 예: a%=5 → a=a%5 →→ a에 5를 나눈 후 그 나머지를 a에 대입
[|=] 예: a|=5 → a=a|5 →→ a와 5에 대해 bit 단위의 OR연산을 한 후 결과를 a에 대입
[&=] 예 : a&=5 → a=a&5 →→ a와 5에 대해 bit단위의 AND연산을 한 후 결과를 a에 대입
[^=] 예: a^=5 → a=a^5 →→ a와 5에 대해 bit단위의 XOR연산을 한 후 결과를 a에 대입
[<<=] 예: a<<=5 → a=a<<5 →→ a의 값을 5bit 좌로 이동 후 결과를 a에 대입
[>>=] 예: a>>=5 → a=>>5 →→ a의 값을 5bit 우로 이동 후 결과를 a에 대입
(5) 조건 연산자
: 주어진 조건의 만족 여부에 따라 지정된 수식을 수행하는 연산자
* 형식 : (조건)? 수식1 : 수식2;
*기능 : 조건이 성림하면(참이면) 수식 1을 수행하고,
조건이 성립되지 않으면(거짓이면) 수식 2를 수행한다.
* 사용예 : x=(5>2)? 1:0;
(6) 비트 연산자
: 수치에 대해 bit 단위의 연산을 수행하는 연산자
[& (bit AND)] 예:a&b → 대응되는 두 bit가 모두 1일 때만 결과는 1
[| (bit OR)] 예: a|b → 대응되는 두 bit 중 하나라도 1이면 결과는 1
[^ (bit XOR)] 예: a^b → 대응되는 두 bit가 서로 다를 때만 결과는 1
[~ (bit NOT)] 예: ~a → 1은 0으로, 0은 1로 함.
[<< (bit 좌로 이동)] 예: a<<2 → a의 값에 대해 2비트 왼쪽으로 이동 (이동시 빈자리는 0이 자리함)
[>> (bit 우로 이동)] 예: a>>b → a의 값에 대해 2비트 오른쪽으로 이동 (이동시 빈자리는 0이 자리함)
(7) 기타 연산자
[ sizeof() ]
* 형식 : sizeof(자료)
*기능 : 지정한 자료형, 상수, 수식, 변수가 차지하는 기억공간의 크기(byte)를 구함.
*예: sizeof(int)
[ cast(형변환) ]
* 형식: (형명칭)자료;
* 기능 : 이미 지정한 자료형을 강제적으로 다른 자료형으로 바꿈.
[&] : 주소 연산자로서 피 연산자의 주소를 나타냄
[*] : 내용 연산자로서 피 연산자의 내용을 가져옴.
2. 연산자 우선순위
1) 우선순위 정리표
'공부정리 및 기록 > [C언어] 프로그래밍' 카테고리의 다른 글
6. 함수와 기억 클래스(1) (0) | 2020.05.28 |
---|---|
5. 선택 제어문과 반복 제어문 (0) | 2020.05.28 |
3. 입·출력 함수와 연산자(1) (0) | 2020.05.28 |
2. 자료형과 선행처리기 (0) | 2020.05.28 |
1. C언어의 개요 (0) | 2020.05.27 |
댓글