C 수학 증감연산 - sonkoni/Koni-Wiki GitHub Wiki
증감연산
x++ 증가 연산자(뒤, 후위)
x-- 감소 연산자(뒤, 후위)
++x 증가 연산자(앞, 전위)
--x 감소 연산자(앞, 전위)
정수 1을 더한다. 다만 postfix 의 경우 할당에 주의해야 한다.
보통은 할당연산자와 증감연산자를 함께 사용하지 않는다. 왜냐면 헷갈리니까. 차라리 b = a + 1; 그냥 이렇게 적는 것이 명확하다.
그러나 for 등에서 증감 처리 구문에서는 빈번하게 쓰이므로 특징을 정확하게 숙지하고 있어야 한다.
int a = 3;
int b;
b = a++;
printf("a:%d, b:%d\n", a, b);
// postfix 는 a 를 할당한 다음 증가하기 때문에
// b 에는 증가하기 전의 값이 들어간다.
// a:4, b:3
b = ++a;
printf("a:%d, b:%d\n", a, b);
// prefix 는 a 를 증가시킨 다음에 할당하기 때문에
// b 에는 증가한 a와 동일한 값이 들어간다.
// a:5, b:5
float num = 3.5f;
num++;
printf("num: %f\n", num);
// 실수도 ++ 는 정수 영역만 1 증가시킨다.
// num: 4.500000
char c = 'b';
c++;
printf("char: %c\n", c);
// char 도 사실은 정수로 저장되기 때문에 증감연산자 사용 가능
// char: c