질문자 :Dinah Joel이 Stack Overflow 팟캐스트 #34 에서 지적했듯이 C 프로그래밍 언어 (일명: K & R)에는 C: a[5] == 5[a] Joel은 포인터 연산 때문이라고 하지만 여전히 이해가 되지 않습니다. 왜 a[5] == 5[a] 입니까? C 표준은 [] 연산자를 다음과 같이 정의합니다. a[b] == *(a + b) 따라서 a[5] 는 다음과 같이 평가됩니다. *(a + 5) 5[a] 는 다음과 같이 평가됩니다. *(5 + a) a 는 배열의 첫 번째 요소에 대한 포인터입니다. a[5] 5 개 요소있어서의 값이다 와 동일 a *(a + 5) , 초등 수학에서 우리는 그 (또한이 동일 알고 가환 ). mmx 배열 액세스는 포인터로 정의되기 때문입니다. a[i] 는 가환성인 ..