p[] 썸네일형 리스트형 5. *p와 p[]의 차이. *p와 p[]의 차이를 설명하기에 앞서 간단한 코드를 보여드리겠습니다. 1번은 배열을 이용해서 각각 *(a + 2), a[2], 2[a]를 출력하고 있고 2번은 char형 포인터에서 b[2]에 해당하는 값을 출력하는 겁니다. 각각 어떤 값이 출력될까요? 1번 여러분이 아시는 a[2]는 당연히 3이 출력되겠죠. 그렇다면 2[a]와 *(a + 2)는 어떤 값이 출력이 될까요? 똑같이 3, 3이 출력이 됩니다. 여기서 눈치가 조금 빠르신분은 대충 아셨겠지만 a[2]는 배열이 아닙니다. 포인터 변수를 배열처럼 사용했을 뿐. a[2]의 의미는 a에서 2만큼 더 떨어진 곳의 값을 지칭합니다. 그래서 *(a + 2) == a[2]는 같은 표현이죠. 그렇다면 2[a]는 무슨 뜻일까요. C언어에서 []는 연산자를 나타냅.. 더보기 이전 1 다음