Post

C 언어(5) 배열

C 언어(5) 배열

배열

배열같은 타입변수들로 이루어진 유한 집합으로 정의됩니다.

배열을 구성하는 각각의 값을 배열 요소라고 하며,
배열에서의 위치를 가리키는 숫자는 인덱스라고 합니다.
C언어에서 인덱스는 언제나 0부터 시작하며, 0을 포함한 양의 정수만을 가질 수 있습니다.

배열 선언

1차원 배열은 다음과 같이 [자료형 변수 이름[배열의 크기]] 로 선언할 수 있습니다

1
int arr[3]; // int를 5개 가지고 있는 배열

배열 초기화

배열 역시 변수와 같이 초기화를 해주지않으면 아무런 의미가 없는 값을 가지고 있습니다.

1
2
3
4
int arr[3];
arr[0] = 10;
arr[1] = 20;
arr[2] = 30;

또한 배열도 선언과 동시에 초기화가 가능합니다.

1
int arr[3] = {10, 20, 30};

배열의 크기를 정하고 선언과 동시에 초기화를 하지만
배열 요소의 개수가 충분하지 않을 경우 남은 요소들은 0의 값으로 초기화됩니다.

1
2
int arr[5] = {10, 20, 30}; 
// {10, 20, 30, 0, 0} 의 값을 가짐

선언과 동시에 초기화를 사용할 경우 배열의 크기를 정해주지 않으면
초기화할 때 선언한 배열 요소의 개수만큼의 크기를 가집니다

1
int arr[] = {10, 20, 30}; // int arr[3] = {10, 20, 30}; 와 같음

배열 요소 사용

배열안에 있는 배열의 요소를 사용하기 위해서는
[배열 변수 이름[인덱스]] 로 배열 요소를 사용할 수 있습니다.

1
2
3
4
int arr[3] {10, 20, 30};
int value1 = arr[0]; // value1 = 10
int value2 = arr[1]; // value2 = 20
int value3 = arr[2]; // value3 = 30

다차원 배열

다차원 배열이란 2차원 이상의 배열을 의미하며, 배열 요소로 또 다른 배열을 가지는 배열을 의미합니다.

다차원 배열 선언

다차원 배열은 [자료형 변수 이름[행의 길이][열의 길이]… ] 로 선언할 수 있습니다.

1
2
3
4
int arr1[3]; // 1차원 배열
int arr2[3][5]; // 2차원 배열
int arr3[3][5][2]; // 3차원 배열
int arr4[3][5][2][10]; // 4차원 배열

다차원 배열 초기화

다차원 배열은 다음과 같은 방법으로선언과 동시에 초기화할 수 있습니다.

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

다차원 배열 요소 사용

다차원 배열은 다음과 같은 방법으로 배열의 요소를 사용할 수 있습니다.

1
2
3
4
5
6
7
8
int arr[2][3] = 
{
    {1, 2, 3},
    {4, 5, 6}
};

int value1 = arr[1][1]; // value1 = 5;
int value2 = arr[0][2]; // value1 = 3;
This post is licensed under CC BY 4.0 by the author.