상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
수정하기 - C++에서 다차원 배열을 선언하는 방법은?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
C++에서 다차원 배열을 선언하는 방법은 여러 가지가 있으며, 주로 2차원 배열과 3차원 배열이 많이 사용됩니다. 다차원 배열은 배열의 각 요소가 또 다른 배열을 포함하는 구조로, 주로 행렬이나 테이블 형태의 데이터를 표현할 때 유용합니다. 아래에서는 C++에서 다차원 배열을 선언하고 사용하는 방법에 대해 자세히 설명하겠습니다. 1. 2차원 배열 선언 2차원 배열은 배열의 배열로 생각할 수 있습니다. 기본적인 선언 방법은 다음과 같습니다: ```cpp type arrayName[rows][columns]; ``` 여기서 `type`은 배열의 <a href='https://sangseek.com/sangseeks/데이터 타입/ko'>데이터 타입</a>(예: `int`, `float`, `char` 등), `rows`는 배열의 행 수, `columns`는 배열의 열 수입니다. 예제 ```cpp include <iostream> int main() { // 3행 4열의 2차원 배열 선언 int arr[3][4]; // 배열 초기화 int arr2[3][4] = { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12} }; // 배열 요소 접근 및 출력 for (int i = 0; i < 3; i++) { for (int j = 0; j < 4; j++) { std::cout << arr2[i][j] << " "; } std::cout << std::endl; } return 0; } ``` 위의 예제에서 `arr`은 3행 4열의 2차원 배열로 선언되었으며, `arr2`는 초기화된 2차원 배열입니다. 이중 반복문을 사용하여 배열의 모든 요소를 출력합니다. 2. 3차원 배열 선언 3차원 배열은 2차원 배열의 배열로, 다음과 같이 선언할 수 있습니다: ```cpp type arrayName[depth][rows][columns]; ``` 여기서 `depth`는 배열의 깊이(또는 층 수)를 나타냅니다. 예제 ```cpp include <iostream> int main() { // 2층, 3행, 4열의 3차원 배열 선언 int arr[2][3][4]; // 배열 초기화 int arr2[2][3][4] = { { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12} }, { {13, 14, 15, 16}, {17, 18, 19, 20}, {21, 22, 23, 24} } }; // 배열 요소 접근 및 출력 for (int i = 0; i < 2; i++) { for (int j = 0; j < 3; j++) { for (int k = 0; k < 4; k++) { std::cout << arr2[i][j][k] << " "; } std::cout << std::endl; } std::cout << std::endl; // 층 구분 } return 0; } ``` 위의 예제에서 `arr`은 2층, 3행, 4열의 3차원 배열로 선언되었으며, `arr2`는 초기화된 3차원 배열입니다. 이중 반복문을 사용하여 배열의 모든 요소를 출력합니다. 3. <a href='https://sangseek.com/sangseeks/동적 메모리/ko'>동적 메모리</a> 할당을 통한 다차원 배열 C++에서는 동적 메모리 할당을 통해 다차원 배열을 생성할 수도 있습니다. 이는 배열의 크기를 런타임에 결정할 수 있게 해줍니다. 예제 ```cpp include <iostream> int main() { int rows = 3; int columns = 4; // 동적 메모리 할당 int arr = new int*[rows]; for (int i = 0; i < rows; i++) { arr[i] = new int[columns]; } // 배열 초기화 int value = 1; for (int i = 0; i < rows; i++) { for (int j = 0; j < columns; j++) { arr[i][j] = value++; } } // 배열 요소 접근 및 출력 for (int i = 0; i < rows; i++) { for (int j = 0; j < columns; j++) { std::cout << arr[i][j] << " "; } std::cout << std::endl; } // 메모리 해제 for (int i = 0; i < rows; i++) { delete[] arr[i]; } delete[] arr; return 0; } ``` 위의 예제에서는 `new` 연산자를 사용하여 2차원 배열을 동적으로 생성하고, 사용이 끝난 후에는 `delete`를 사용하여 메모리를 해제합니다. 결론 C++에서 다차원 배열을 선언하는 방법은 <a href='https://sangseek.com/sangseeks/정적 배열/ko'>정적 배열</a>과 <a href='https://sangseek.com/sangseeks/동적 배열/ko'>동적 배열</a> 두 가지가 있습니다. 정적 배열은 컴파일 타임에 크기가 결정되며, 동적 배열은 런타임에 크기를 결정할 수 있습니다. 각 방법은 특정 상황에서 유용하게 사용될 수 있으며, 프로그래머는 필요에 따라 적절한 방법을 선택해야 합니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기