Coding/C

연산자

|--------3cm--------| 2021. 6. 5. 15:12

산자란?

다양한 연산을 위해 약속된 기호입니다.

 

 

[그림-1] 연산사 우선순위

 

산술 연산자

더하기,빼기 등 산술 계산에 사용되는 연산자입니다.

연산자 의미
+ 덧셈
- 뺄셈
* 곱셈
/ 나눗셈
% 나머지
++ 증가 연산자 전치 : 변수 앞에 증감 연산자가 오는 형태로 변수의 값을 증감시킨 후에 연산에 사용 함
e.g.) ++a, --a
후치 : 변수 뒤에 증감 연산자가 오는 형태로 변수 연산을 먼저 수행하고 후에 변수의 값을 증감 시킴
e.g.) a++, a--
-- 감소 연산자
더보기


1. 전치 연산자

int main(void){
    int a = 0, b;
    printf("a = %d\n", a);
    b = ++a;
    printf("b = %d\n", b);
}
/* 출력 결과
a = 0
b = 1
*/

b = ++a; 

변수의 값을 증가 시킨 후 변수를 연산에 사용

 

2. 후치 연산자

int main(void){
    int a = 0, b;
    printf("a = %d\n", a);
    b = a++;
    printf("b = %d\n", b);
    printf("a = %d\n", a);
    printf("b = %d", b);
}

/* 출력 결과
a = 0
b = 0
a = 1
b = 0
*/

변수 연산을 먼저 수행한 후 변수의 값을 증가시킴.

b = a++;

변수 a는 0으로 연산 후에 변수 a의 값에 1증가 시킴
다시 a을 호출하였을 시 값이 1증가 되어 있음.

 

관계 연산자

두 수의 관계를 비교하여 true(1) 또는 false(0)로 결과를 얻는 연산자입니다.

연산자 의미
= 같다
!= 같지 않다
> 크다
>= 크거나 같다
< 작다
<= 작거나 같다

 

비트 연산자

비트(0, 1)로 연산하여 결과를 얻는 연산자입니다.

연산자 의미 서술
& and 모든 비트가 1일때만 1
^ xor 모든 비트가 같으면 0, 하나라도 다르면 1
| or 모든 비트 중 한 비트가 1이면 1
~ not 각 비트의 부정 0이면 1, 1이면 0
<< 왼쪽 시프트 비트를 왼쪽으로 이동
>> 오른쪽 시프트 비트를 오른쪽으로 이동

 

논리 연산자

논리 연산하여 true(1) 또는 false(0)로 결과를 얻는 연산자입니다.

연산자 의미 서술
! not 부정
&& and 모두 참이면 참
|| or 하나라도 참이면 참

 

대입 연산자

연산 후 결과를 대입하는 연산자입니다.

연산자 e.g.) 의미
+= a +=1 a = a +1
-= a -=1 a = a -1
*= a *=1 a = a * 1
/= a /=1 a = a / 1
%= a %=1 a = a % 1
<<= a <<= 1 a = a << 1
>>= a >>= 1 a = a >> 1

 

조건 연산자

조건에 따라 수식을 수행하는 연산자입니다.

형식 의미
조건 ? 수식1 : 수식2; 조건의 수식이 true면 수식1을 실행, false이면 수식2를 실행

 

기타 연산자

연산자 의미
sizeof 자료형의 크기 표시
, 콤마로 한줄에 2개 이상의 수식을 작성할 때 사용
(자료형) 자료형을 다른 자료형으로 변환할 때 사용

'Coding > C' 카테고리의 다른 글

분기문(if, if ~ else, switch)  (0) 2021.06.12
반복문(while, do ~ while, for)  (0) 2021.06.06
C언어 변수와 입·출력(scanf, printf) 그리고 주석  (0) 2021.05.29
C언어 기본 구조  (0) 2021.05.09
[VS Code] C / C++ 컴파일 및 실행  (0) 2021.03.13