다차원 배열

다차원 배열 인덱스

2차원 배열은 표처럼 보이지만 메모리에는 행 단위로 연속 배치되므로 선언 크기와 접근 순서를 함께 이해해야 합니다.

선언

행과 열 크기를 고정

int table[3][4]는 3행 4열의 int 값을 저장합니다.

int t[3][4]
초기화

중첩 중괄호로 행을 표현

각 행의 값을 따로 묶으면 표 구조가 코드에서도 보입니다.

{{1,2},{3,4}}
접근

두 인덱스로 위치 선택

행과 열의 범위를 각각 검사해야 범위 초과를 피할 수 있습니다.

t[r][c]
배치

행 우선으로 연속 저장

안쪽 열 인덱스를 빠르게 바꾸는 순회가 캐시 친화적일 수 있습니다.

row-major
범위행 개수와 열 개수를 혼동하지 않도록 이름을 분리합니다.
반복중첩 for에서 바깥 루프는 행, 안쪽 루프는 열을 맡는 패턴이 흔합니다.
확장3차원 이상은 읽기 부담이 크므로 구조체나 컨테이너 설계도 고려합니다.