Computer >> 컴퓨터 >  >> 프로그래밍 >> C 프로그래밍

C/C++ 다차원 배열 초기화 방법과 예제 코드

다차원 배열(multidimensional array)이란 차원이 1보다 큰 배열을 의미합니다. 즉, 2차원 이상의 배열로, 행렬이나 입체적인 데이터 구조를 표현할 때 유용하게 사용됩니다.

다음 그림은 3 x 3 x 3 크기의 3차원 배열에 대한 메모리 할당 전략을 보여줍니다.

C/C++ 다차원 배열 초기화 방법과 예제 코드

아래는 C++로 다차원 배열을 초기화하고 활용하는 프로그램 예제입니다.

알고리즘

시작
    다차원 배열의 요소를 초기화한다.
    배열의 크기를 출력한다.
    배열의 내용을 화면에 표시한다.
종료

예제 코드

#include<iostream>
using namespace std;
int main()
{
   int r, c;
   int a[][2] = {{3,1},{7,6}};
   cout<< "Size of the Array:"<<sizeof(a)<<"\n";
   cout<< "Content of the Array:"<<sizeof(a)<<"\n";
   for(r=0; r<2; r++) {
      for(c=0; c<2; c++) {
         cout << " " << a[r][c];
      }
      cout << "\n";
   }
   return 0;
}

코드 설명

위 코드에서 int a[][2] = {{3,1},{7,6}};는 2행 2열짜리 2차원 배열을 선언하면서 동시에 중괄호를 이용해 초기화하는 방식입니다. 첫 번째 차원(행의 개수)은 생략할 수 있으며, 컴파일러가 초기화 값의 개수를 바탕으로 자동으로 계산합니다.

sizeof(a) 연산자는 배열 전체가 차지하는 메모리 크기를 바이트 단위로 반환합니다. int형이 4바이트이므로 2 x 2 = 4개의 요소를 가진 배열의 총 크기는 16바이트가 됩니다.

실행 결과

Size of the Array:16
Content of the Array:16
3 1
7 6

정리

C/C++에서 다차원 배열은 선언과 동시에 중괄호 {}를 사용하여 초기화할 수 있습니다. 이때 가장 앞쪽 차원의 크기는 생략 가능하지만, 나머지 차원의 크기는 반드시 명시해야 합니다. sizeof 연산자와 중첩 반복문을 활용하면 배열의 크기와 저장된 값을 손쉽게 확인할 수 있습니다.