포인터
-
[C언어] 2차원 배열포인터의 타입Programming/C 언어 2008. 10. 28. 12:49
1차원 배열의 포인터 타입을 결정할때 우리는 포인터의 자료형과 포인터 연산시 증가하는 바이트 크기가 같다 는것을 알고 있다.그럼 2차원 배열은 어떨까? 1차원 배열과 같을까? 이렇게 같으면 얼마나 좋으련만.. 그렇지가 않다.포인터의 자료형은 1차원배열과 마찬가지로 포인터가 가르키는 자료형과 일치하지만 포인터 연산시 증가하는 바이트의 크기가 틀리다. 같은 int형 배열이더라도 증가하는 값은 4byte로 동일한것이아니라 그때 그때 틀리다는 것이다.예를 들어 보자.int arr[3][2] = {1,2,3,4,5,6};위와같이 3*2배열이 있다.자료형은 당연히 int형일테지만 포인터 연산시 증가하는 값은 몇byte일까?확인하는 간단한 방법은 주소값을 출력하면 되겠죠printf("arr[0] : %d\n",arr..