Re: for문을 하다가 갑자기 궁금한점이 생겼습니다.
, 도장_ 관리자님이 작성전위 연산자는 UNIT 13에 설명되어 있습니다.
반복문에서는 차이가 없습니다.
더 자세한 설명은 시퀀스 포인트를 읽어봐야 합니다.
당장 이해가 안 되면 나중에 차례대로 학습한 다음에 마지막에 다시 보는 것을 추천합니다.
대다수 C 언어 입문서가 설명하는
i = 1;
i = i++ + ++i;
같은 코드는 표준에서 정의되지 않은 동작(UB, Undefined Behavior)이고, 시퀀스 포인트 위반이므로 올바른 C 언어 코드가 아닙니다.
정의되지 않은 동작의 코드는 컴파일러 구현체마다 결과가 달라지므로 정답이 있을 수 없습니다. 그럼에도 상당수 C 언어 입문서가 정답을 제시하고 있고, 엉터리를 학습하고 있습니다.