연산자가 하는 일
연산자의 정확한 역할대로 계산 수행
하지만 더 중요한 것은?!
연산의 결과값을 그 자리에 남긴다는 것이다.
그렇기에 연산자 개수가 계산 횟수를 나타낸다.
그리고 코드를 줄이고 싶다면 이와 같이 응용을 할 수 있다.
1만 증가하는 경우에는 다음과 같이 더욱 간단하게 표현할 수 있다.
그러나, a++ 과 ++a 는 다르다.
a 값이 1 증가되는 것은 같으나
무엇을 남기는지에 대해 둘의 차이가 나타난다.
+ 아래 코드를 실행시켜보면 "4 12"가 출력되는 것을 알 수 있는데
코드 밑에 이유가 있으니 스스로 한 번 생각해보고
내려가길 바란다.
#include <stdio.h>
int main() {
int a, b, c;
a = 2;
b = a++ + a++;
c = ++a + ++a;
printf("%d %d", b, c);
return 0;
}
b = a++ + a++; -> b = a + a; a += 1; a += 1; -> b = 2 + 2; a += 1; a+= 1; (따라서, a = 2 + 1 + 1 = 4)
c = ++a + ++a; -> a += 1; a += 1; c = a + a; -> a += 1; a += 1; c = 6 + 6; (따라서, a = 4 + 1 + 1 = 6)
그렇다면, "a++ + ++a"나 "++a + a++"는 어떻게 될 것 같은가? 궁금하지 않은가?
직접 해보고 그 이유를 스스로 깨달을 수 있다면
++a와 a++에 대한 이해가 충분히 되었는 것이라 생각된다.
https://book.naver.com/bookdb/book_detail.nhn?bid=8187381
'프로그래밍 언어 > C언어' 카테고리의 다른 글
C언어 - switch문 (0) | 2020.08.17 |
---|---|
C언어 - 논리연산자 (0) | 2020.08.17 |
C언어 - else if, else 문 (0) | 2020.08.10 |
C언어 - while, do while 반복문 (0) | 2020.07.22 |
C언어 - for 반복문 (0) | 2020.07.07 |