안녕하세요.
정말 오랜만에 포스팅을 하게 됩니다.
바쁜회사 업무와 맞물려 포스팅을 못하게 되네요.
하지만 오늘은 작심하고 포스팅에 도전합니다.
오늘은 C언어의 연산자에 대한 포스팅을 합니다.
C언어의 연산자는 아래에 정리된 표와 같은 것들이 있습니다.
1. 대입 연산자
대입 연산자는 말그대로 대입을 하는 것입니다.
아래의 예처럼 x라는 변수에 1을 저장하는 것입니다.
일반적으로 수학에서 '='의 의미는 같다, 동등하다는 의미로 통합니다.
하지만 프로그램 세계에서는 값을 저장한다는 의미로 통합니다.
2. 산술 연산자
산술 연산자는 연산을 하는 연산자 입니다.
아래의 예처럼 input_x변수와 input_y변수를 더하여 Result_Add변수에 대입하는 것입니다.
사칙연산을 기본적으로 포함합니다.
그리고 변수뒤에 '++'는 1씩 증가를 의미하고 '--'는 1씩 감소를 시킨다는 의미 입니다.
예>
x++;
y--;
3. 관계 연산자
관계연산자는 변수 또는 상수값들을 상호간에 비교하여 큰지 작은지 같은지를 비교하는 연산자 입니다.
아래의 예는 간단한 비교연산을 하는 함수를 구현한 것입니다.
input_x와 input_y라는 변수를 인자로 받아 비교 후 결과를 리턴하는 함수 입니다.
'!='의 의미는 비교하는 두 값이 같지 않은 경우를 체크 합니다.
'>', '<'는 수학에서 쓰는 것처럼 비교하는 두 값이 크거나 작다를 체크합니다.
'==' 의 의미는 비교하는 두 값이 같은 경우를 체크 합니다.
'>=', '<='는 위 예제에서 표현되지 않았지만 크거나 같다, 작거나 같다를 체크합니다.
4. 논리 연산자
논리연산자는 논리적인 관계를 체크하는 연산자 입니다.
아래의 예는 논리연산자와 관계연산자를 혼합한 형태의 함수 입니다.
input_x를 인자로 받아 먼저 check가 false라면 비교연산을 실행하는 함수 입니다.
check변수 앞의 '!'는 false를 체크한다는 의미 입니다.
반대로 '!'없이 check만 있다면 if(check)는 true를 체크하는다는 의미입니다.
'&&'의 의미는 두조건식의 값이 모두 만족하는지를 체크합니다.
'||'의 의미는 두조건식이 하나라도 만족하는지를 체크합니다.
4. 할당 연산자
할당 연산자는 값을 연산 후 바로 할당하는 연산자 입니다.
결과가 저장되는 변수와 피연산자의 변수가 같습니다.
4. 삼항 연산자
삼항연산자는 입력값의 참, 거짓을 판단해 결과를 반환 합니다.
참일 경우 ? 뒤의 첫번째 값을 반환합니다. 거짓인 경우는 두번째 값을 반환합니다.
4. 비트 연산자
비트 연산자는 이진수의 차원으로 값을 연산하여 결과를 반환 합니다.
'<<' 비트단위로 왼쪽 시프트 시키는 연산입니다.
0b00000001<<3 , 결과 : 0b00001000
'>>'오른쪽으로 시프트 시켜줍니다.
'&' 비트단위로 값을 AND 연산합니다.
0b00000001 & 0b00010010 , 결과 : 0b00000000
'|' 비트단위로 값을 OR 연산합니다.
0b00000001 | 0b00010010 , 결과 : 0b00010011
'~'비트단위로 값을 Not 연산합니다.
~0b00000001 , 결과: 0b11111110
전체코드
실행결과
다음시간에는 자료형과 변수형에 대해 포스팅 하겠습니다.
의문점이나 이상한 부분은 댓글 남겨 주세요..
감사합니다.
'프로그래밍 > C언어 기초 강좌' 카테고리의 다른 글
C언어 기초강좌6 (break, return문) (12) | 2020.12.08 |
---|---|
C언어 기초 강좌5 (Switch~Case 문) (2) | 2020.12.07 |
C언어 기초 강좌4(if문, if~else문) (2) | 2020.11.26 |
C언어 기초강좌2 (2) | 2020.09.19 |
C언어 기초 강좌1 (2) | 2020.09.16 |
댓글