C언어 다차원 배열 초기화

C언어 다차원 배열 초기화


 2차원 배열은 행과 열의 형태로 생성되지만 메모리상에는 1차원과 같이 순서대로 할당되는 걸 지난 글에서 확인했었는데요. 이번에는 다차원 배열을 초기화하는 방법을 정리해볼까 합니다. 이 방법은 몇 가지가 있지만 기본 형식은 1차원과 비슷한데요. 먼저 1차원 배열을 잠깐 살펴보겠습니다. 


int aaa[]={1, 2, 3 }; 


이렇게 초기화 리스트 안에 입력한 순서대로 데이터가 할당되고 선언한 배열의 수와 초기화한 값이 다를 때는 나머지는 '0'이 대입됩니다.


int bbb[5]={1, 2, 3}; ◀▶ int bbb[5]={1, 2, 3, 0, 0};


1차원 배열을 공부하셨다면 이 두 가지 경우가 같다는 건 아실 겁니다. 2차원 배열 정리한다고 해놓고 왜 이렇게 1차원 이야기를 하냐면 기본 속성이 똑같기 때문입니다. 다차원 배열 초기화 형식은 다음과 같은데요.


int xxx[3][2]={{1, 2},{3, 4}, {5, 6}};

 


하나의 행씩 중괄호로 묶어서 입력하면 됩니다. 만약에 중괄호 안에 하나의 숫자만 입력한다면 뒤쪽 자리는 '0'이 대입되는데 위 형식 중에서 두 번째 중괄호에 '3'만 입력한다면 다음과 같은 형식이 되겠죠? 


int xxx[3][2]={{1, 2}, {3, 0}, {5, 6}};


그리고 중괄호 없이 다음과 같은 형식으로 할 수도 있습니다.


int xxx[3][2]={1, 2, 3, 4, 5, 6};

 

이렇게 하면 앞에서부터 순서대로 값이 채워지게 되고, 만약에 4까지만 입력한다면 나머지 두 개는 역시 '0'값이 들어가게 됩니다. 이렇게 1차원과 같기 때문에 이해하기 쉬운 1차원 배열 초기화를 앞에서 정리했던 것입니다.그럼 앞에서 정리한 내용들을 확인하는 예제를 하나 작성해보고 마무리하겠습니다.

앞에서 정리한 내용한 내용을 확인하는 예제라서 따로 설명은 안하겠습니다. 단순하게 중첩 for 문으로 각 자리의 값들을 출력하고 있는 내용이고 간단한 내용이니까 잠깐 보시면 될 거예요.


이렇게 해서 C언어 다차원 배열의 초기화에 대해서 알아봤습니다. 수고하셨어요.

Leave a comment
Your name *
Your PassWord *
Comment *
COMMENT