C++에서 배열을 선언하는 방법은?
_____A1: 배열은 요소 타입과 이름, 그리고 크기를 지정하여 선언합니다.
```cpp
type arrayName[arraySize];
```
예:
```cpp
int numbers[5];
```
위 코드는 정수형 배열 numbers를 5개의 요소 크기로 선언합니다.
---
Q2: 배열의 크기는 어떻게 지정하나요?
A2: 배열 크기는 정수 상수 또는 상수 표현식이어야 하며, 보통 양의 정수입니다. 크기 지정은 대괄호 안에 넣습니다.
예:
```cpp
char name[10];
```
동적 크기는 배열 선언시에 사용할 수 없고, 동적으로 할당하려면 다른 방식을 사용해야 합니다.
---
Q3: 배열 선언 시 초기화는 어떻게 하나요?
A3: 선언과 동시에 초기화할 수 있습니다.
```cpp
int arr[3] = {1, 2, 3};
```
만약 초기값 개수가 배열 크기보다 적으면 나머지는 0으로 초기화됩니다.
```cpp
int arr[5] = {1, 2}; // arr[2], arr[3], arr[4]는 0으로 초기화
```
크기를 생략하면 초기화 개수에 맞게 자동으로 배열 크기를 결정합니다.
```cpp
int arr[] = {1, 2, 3}; // 크기는 3
```
---
Q4: 다차원 배열 선언 방법은?
A4: 각 차원마다 크기를 대괄호 안에 지정합니다.
예: 2차원 배열
```cpp
int matrix[3][4];
3행 4열인 정수 배열을 선언합니다.
---
Q5: 배열 선언 시 주의할 점은?
A5:
- 크기는 반드시 상수여야 하며, 컴파일 타임에 결정되어야 합니다 (표준 C++에서).
- 배열의 인덱스는 0부터 시작하여 크기-1까지입니다.
- 배열은 메모리에서 연속된 공간에 저장됩니다.
- 초기화를 하지 않으면 기본 타입에서는 쓰레기값이 들어 있습니다.
---
Q6: 문자열 배열 선언 방법은?
A6: 문자열(char 배열)은 char 타입 배열로 선언합니다.
예:
```cpp
char str[20]; // 20글자 크기
char str[] = "Hello"; // 크기는 6 (마지막에 '\0' 포함)
```
---
Q7: C++11 이상에서는 배열 선언에 어떤 변화가 있나요?
A7: C++11부터는 `std::array` 템플릿을 사용할 수 있습니다.
```cpp
include
std::array
```
`std::array`는 배열과 비슷하지만 STL 컨테이너이므로 더 안전하고 편리합니다.
---
요약:
- 기본 형식: `type name[size];`
- 초기화 가능: `int arr[3] = {1, 2, 3};`
- 크기 생략 가능: `int arr[] = {1, 2};`
- 다차원 배열: `int arr[3][4];`
- 문자열 배열: `char str[20];` 또는 `char str[] = "text";`
- C++11 부터는 `std::array` 권장
---
작성자:
최승현 [비회원]
| 작성일자: 1년 전
2024-09-20 17:11:26
조회수: 202 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
조회수: 202 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
내용이 부정확하다면 싫어요를 클릭해주세요.