2차원 배열과 포인터에서 질문드려요.

yc307의 이미지

2차원 배열하고 포인터를 공부하고 있는데요..

제가 아주 초보라 이런 질문드려도 양해해 주세요..

예를 들면 다음과 같습니다.

a[2][5] = {1,2,3,4,5}라고 하면요...

위 배열의 원소중 3까지만 사용하고 그다음에 바로 *a[3] 을 붙이려면

int *a[3];
a[2]+3 = a[3]; 

이렇게 하면 안되나요?

주소 = 주소 라고 쓸수 있는지 잘 모르겠네요..

고수님들 부탁드립니다.

musiphil의 이미지

int *a[3];
a[2]+3 = a[3]; 

좌변은 단순한 값(rvalue)이므로 대입할 수 없습니다. 이는 마치 1=a; 와 같은 대입이 허용되지 않는 것과 같습니다.