C언어에서 선언된 배열을 포인터로 표현이 가능하다.
아래 예제 코드는 선언된 배열을 포인터로 표현하여 출력하는 간단한 코드이다.
위의 예시코드를 컴파일하여 실행하면, 다음과 같이 동일한 값이 나오는 것을 확인할 수 있다.
이를 통하여 [] = *() 연산자가 동일함을 알 수 있는데, 이를 교환법칙으로 괴랄스럽게 변형을 해보았다.
1. Temp[0]을 동일한 의미인 *(Temp+0)으로 변환
2. 교환법칙에 의한 *(0+Temp)으로 변환
3. 동일한 표기인 0[Temp]으로 변환
위의 예시코드를 컴파일하여 실행하면, 에러 없이 컴파일이 되며 값 또한 정상적으로 나오는 것을 확인할 수 있다.
물론, 이와 같은 방법의 코딩 스타일은 절때 추천하지 않는다.
'Programming > C' 카테고리의 다른 글
scanf()에서 & (앰퍼샌드) 연산자를 쓰는 이유 (1) | 2017.09.17 |
---|---|
C 언어 포인터 변수 자료형이 필요한 이유 (1) | 2017.09.16 |
C 언어 모든 포인터 변수 자료형이 똑같은 크기를 가지는 이유 (0) | 2017.09.16 |
C 언어 Call-by-Value(값에 의한 호출) & Call-by-Reference(참조에 의한 호출)의 이해 (1) | 2017.09.16 |
C 언어 포인터의 기초 (0) | 2017.09.16 |