본문 바로가기

프로그래밍/C 기초

[C언어 강좌] #42 배열과 포인터

이번에는 배열과 포인터의 관계에 대해서 설명해드리겠습니다.

저번에 배열에 대해 설명해드릴때 주소값과 연관지어서 설명을 많이 드렸었죠.


arr[

사실 배열은 상수 포인터라고 보시면 됩니다.



위처럼 arr이라는 배열을 선언했을때 arr은 가장 낮은번지의 주소값을 담고있는 상수 형태의 포인터입니다.



arr의 출력결과를 보시면 실제로 주소값을 담고있다는걸 알수있죠.



arr은 &arr[0]의 주소값과 같습니다. 즉 arr이라는 포인터 상수는 그 배열에서 가장 낮은번지의 주소값을 가리키고있을 뿐입니다.


그리고 arr[i]에서 i * 자료형의 크기 만큼 주소값을 증가시켜서 그곳에 접근하는것입니다.



그리고 위에서 말씀드렸듯이 상수입니다.

대입은 불가능합니다.