피연산자 (1) 썸네일형 리스트형 C 에서 i = ++i 나 a[i++] = i 를 쓰면 안되는 이유 표현식 i = ++i 나 a[i++] = i 를 쓰게될 경우 이는 C 표준에서 undefined behavior 입니다. 이식성 있는 코드를 작성하고 싶다면 위와 같은 표현식은 피하는게 좋습니다. 그렇다면 왜 undefined behavior 일까요 ? 이를 위해 side effect , sequence point 라는 개념에 대해 먼저 알아 봅시다. 1. side effect 우리는 보통 연산자가 피연산자의 값을 바꿀 것이라고 기대하지는 않습니다. 가장 평범한 연산자인 산술연산자의 경우 피연산자 i , j 에 대해 특정 연산을 하지 i , j 값 자체를 바꾸지는 않습니다. #include int main(void){ int i = 1 , j = 1 ; i + j ; i - j ; i * j ; i / .. 이전 1 다음