4. http://blog.naver.com/ruvendix
단순 할당 연산자(단순 대입 연산자)
메모리에 있는 값을 복사해서 다른 공간으로 넘기려면?
단순 할당 연산자를 사용하라!
int iYear = 2016;
여기에 있는 =은 그냥 초기화 표시일 뿐
iYear = 2017;
여기에 있는 =이 바로 단순 할당 연산자!
단순 할당 연산자는 이항 연산자
5. http://blog.naver.com/ruvendix
가감승제 그리고 나머지 연산자
산술 연산을 하려면 어떻게 해야 할까?
산술 관련 연산자를 사용하라!
연산자 의미
+ 피연산자끼리 더한다
- 피연산자끼리 뺀다
* 피연산자끼리 곱한다
/ 피연산자끼리 나눈다(0으로 나눌 수 없음!)
% 피연산자끼리 나눠서 나머지를 구한다
(실수는 사용 불가! 마찬가지로 0으로 나눌 수 없음!)
우리에게 가장 익숙한 연산자!
여기에 있는 모든 연산자는 이항 연산자
6. http://blog.naver.com/ruvendix
복합 할당 연산자
연산의 결과를 바로 할당할 수는 없을까?
복합 할당 연산자를 사용하라!
복합 할당 연산자는 가독성이 떨어지는 단점이 있음!
복합 할당 연산자는 이항 연산자
연산자 의미
+= + 연산의 결과를 할당
-= - 연산의 결과를 할당
*= * 연산의 결과를 할당
/= / 연산의 결과를 할당
%= % 연산의 결과를 할당
7. http://blog.naver.com/ruvendix
관계 연산자
메모리 공간에 있는 값끼리의 관계를 알아내려면?
관계 연산자를 사용하라!
관계 연산자의 참은 0이 아닌 값, 거짓은 0을 의미!
관계 연산자는 이항 연산자
연산자 의미
< 왼쪽이 오른쪽보다 작으면 참, 아니면 거짓
<= 왼쪽이 오른쪽보다 작거나 같으면 면 참, 아니면 거짓
> 왼쪽이 오른쪽보다 크면 참, 아니면 거짓
>= 왼쪽이 오른쪽보다 크거나 같으면 참, 아니면 거짓
== 왼쪽이 오른쪽과 같으면 참, 아니면 거짓
!= 왼쪽이 오른쪽과 다르면 참, 아니면 거짓
8. http://blog.naver.com/ruvendix
논리 연산자
메모리 공간에 있는 값끼리의 논리를 알아내려면?
논리 연산자를 사용하라!
논리 연산자의 참은 0이 아닌 값, 거짓은 0을 의미!
논리 연산자는 이항 연산자
연산자 의미
&&
왼쪽과 오른쪽 둘 다 참이면 참,
둘 중 하나만 거짓이면 무조건 거짓
||
왼쪽과 오른쪽 둘 중 하나만 참이면 참,
둘 다 거짓일 때만 거짓
참 && 거짓 => 거짓
참 || 거짓 => 참
9. http://blog.naver.com/ruvendix
주소 연산자
메모리 공간의 주소를 알아내려면 어떻게 해야 하지?
주소 연산자를 사용하라!
주소 연산자는 포인터와 직접 관련이 있음!
주소 연산자는 단항 연산자
iNum의 주소를 알고 싶다!
그렇다면 &iNum 이렇게 하면 됨!
scanf()에서는 &을 이용해서 메모리 공간에 접근!
그래서 scanf(“%d”, &iNum); 이렇게 되는 것!
11. http://blog.naver.com/ruvendix
형식 선정 연산자(캐스팅 연산자)
자료형 간의 형식이 서로 다르다면 어떻게 연산하지?
형식 선정 연산자를 사용하라!
int iNum = 10;
double dNum = 10.3;
iNum + dNum;
이럴 때는 컴파일러가
알아서 형식을 변환
(묵시적 형변환)
iNum + (int)dNum;
이럴 때는 일시적으로
형식을 변환하고 연산
(명시적 형변환)
형식을 변환한다고 원본의 형식이 변환되는 건 아님!
형식 선정 연산자는 단항 연산자
12. http://blog.naver.com/ruvendix
함수 호출 연산자
함수를 호출할 때는 항상 연산자를 사용함!
그 연산자는 바로 함수 호출 연산자!
함수 호출 연산자의 내부 처리 순서는 복잡…
함수 호출 연산자는 단항 연산자지만… 관점에 따라 분류가 달라짐
printf는 함수의 식별자일 뿐...
함수의 식별자는 함수가 시작되는 주소를 의미!
따라서 함수의 식별자로는 함수를 호출할 수 없음!
printf에 ()을 붙여야 완벽한 함수 호출!
printf(“%s”, “함수 호출!”); 이런 식으로~
13. http://blog.naver.com/ruvendix
전위 증감, 후위 증감 연산자
피연산자의 값을 증가시킬 때 시점을 이용하려면?
증감 연산자를 사용하라!
후위 증감 연산자는 잘 알고 있어야 함!
증감 연산자는 단항 연산자
++iNum과 –iNum은 전위 증감 연산자
값을 무조건 1증감시키고 연산!
iNum++와 iNum--은 후위 증감 연산자
먼저 연산부터 하고 값을 1증감!
(하지만 증감 시점은 예측 불가)
14. http://blog.naver.com/ruvendix
삼항 조건 연산자
연산자 중 삼항 연산자는 딱 하나 있는데
바로 삼항 조건 연산자!
삼항 조건 연산자는 선택문의 분량을 줄일 때 사용!
다만 가독성이 떨어지는 단점이 있음!
(식) ? (참이면 실행) : (거짓이면 실행);
괄호는 생략해도 되지만 써주는 게 좋음!