int a = 10; int s = 0; s = a++; printf("%d",s); 여기서 s값이 10이나오는것이 궁금합니다.. 연산자 우선순위로 볼때 a++ 이 먼저계산되고 그 값이 s에 들어갈것긑거든요.. 풀어서 쓴다고 해도 s = a = a + 1 이 되질 않나요? -_-;; 웨 10이 나오는지 -_-;; 아.. 저의 허접함이 밀려옵니다. ㅡㅜ
C 에서 a++ 는 현재 값을 결과로 내고 나서 a 를 1 증가시킵니다. 그래서 s = a++ 에서 s 는 이전 값인 10 이 되고, a 는 11 이 됩니다. 후위 증가 연산자는 식의 결과로 이전 값을 쓴다는 것만 기억하시면 됩니다.