8.3.2 다차원 배열의 요소에 접근하기
1차원 배열에서는 0부터 시작하는 인덱스로 배열 요소를 구분해 각 요소에 접근했습니다. 그래서 arr[5] 배열의 각 요소는 인덱스 [0], [1], [2], [3], [4]로 접근할 수 있습니다. 그럼 다차원 배열의 각 요소는 어떻게 접근할까요?
1차원 배열은 번호 하나로 된 인덱스로 요소에 접근하지만, 2차원 이상의 다차원 배열에서는 차원이 하나씩 늘 때마다 인덱스 번호도 하나씩 더 필요합니다. 예를 들어, arr2[2][5] 배열은 5개 공간의 1차원 배열이 2개 있는 2차원 배열입니다.
int arr2[2][5] = {
{ 1, 2, 3, 4, 5 },
{ 5, 6, 7, 8, 9 }
};
가로 크기를 의미하는 두 번째 대괄호의 값 5에 의해서 가로에 해당하는 위치는 인덱스 [0], [1], [2], [3], [4]로 접근합니다. 그리고 세로 크기를 의미하는 첫 번째 대괄호의 값 2에 의해서 세로에 해당하는 위치인 [0] 또는 [1]을 인덱스 앞에 추가합니다. 따라서 첫 번째 배열의 인덱스는 [0] [0], [0] [1], [0] [2], [0] [3], [0] [4]가 되고, 두 번째 배열의 인덱스는 [1] [0], [1] [1], [1] [2], [1] [3], [1] [4]가 됩니다.
그림 8-6 2차원 배열의 요소에 접근하는 방법