-
[C언어] 6-1. 배열프로그래밍/C 2014. 4. 7. 20:41반응형
1. 배열의 개념
- 배열이란 동일한 형의 연속적인 기억공간에 대표이름을 부여해 데이터를 순서대로 저장하는 변수 공간을 의미
- 배열의 형태에 따라 1차원 배열과 다차원 배열(2차원, 3차원 등) 로 분류
* 배열선언 형식
- 배열을 선언하는 형식은 다음과 같다.
데이터형 배열명 [크기];
char str[5];
* 배열의 특징
- 배열은 동일한 데이터형의 데이터를 저장할 수 있는 연속적인 기억공간
- 배열은 일차원뿐만 아니라 다차원 배열로도 사용할 수 있다.
- 배열의 각 요소를 하나의 변수처럼 사용할 수 있다.
- 배열의 각 요소는 자료형과 함께 기억 클래스도 가질 수 있다.
- 배열의 각 요소는 첨자를 이용해서 구분하며 첨자는 반드시 0부터 시작
2. 1차원 배열
데이터형 배열명[크기];
int number[5];double android[5];
- 정수형 배열변수 number는 4byte 크기의 변수 공간 5개가 모인 20byte 크기의 연속적인 기억공간을 가리키며 각각 5개의 기억 공간에는 정수형 값을 대입할 수 있다.
- 다음은 기억공간을 개념적인 구조로 표시한것이다.
number
number[0] number[1] number[2] number[3] number[4]
- 실수형 배열변수 android는 8byte 크기의 변수 공간 5개가 모인 40byte 크기의 연속적인 기억공간을 가리키며 각각 5개의 기억공간에는 실수형 값을 대입 가능
android
android[0] android[1] android[2] android[3] android[4]* 1차원 배열의 초기화
- 배열에 값을 대입하여 초기화하는 방법은 다음과 같다
1. 배열 선언 후 초깃값을 대입한느 방법
2. 배열 선언 시 초깃값을 바로 대입하는 방법
3. 잘못된 배열[] 선언 및 초기화
3. char형 배열과 문자열
- 문자열을 저장하기 위해서는 연속된 문자들을 저장할 수 있는 문자배열을 선언하고 사용해야함.
- 문자배열 선언 시 주의할 점은 문자열의 끝은 항상 NULL문자(\0)을 저장해야하기 때문에 배열의 크기를 '문자열의 길이 + 1' 만큼 지정해야한다.
4. 다차원 배열
* 2차원 배열
- 2차원 이사으이 배열을 다차원 배열이라 하며 주로 2차원과 3차원 배열이 사용
* 2차원 배열의 선언
- 2차원 배열의 경우는 행과 열의 수를 이용해서 배열에 연속적인 기억공간을 할당
int number[2][3];데이터형 배열명[행의개수][열의개수];
- 정수형 배열 number는 다음과 같이 2행 3열로 된 6개의 배열 요소를 가지고 있다.
number
number[0][0] number[0][1] number[0][2]
number[1][0] number[1][1] number[1][2]
* 3차원 배열
- 3차원 배열의 경우는 면의 수, 행의 수, 열의 수를 이용해서 배열에 연속적인 기억 공간을 할당
int number[2][2][3];데이터형 배열명[면의 개수][행의 개수][열의 개수];
- 정수형 배열 number는 다음과 같이 2면 2행 3열로 된 12개의 배열요소를 가지고 있다.
* 정리후기
- 다음장에서는 포인터에 대해서 정리한다. 이번장에서는 배열에 대해서 정리했는데 시험칠것도 생기고 다른 중요한 할것들이 생겨서 섬세히 정리하지 못한것 같아 아쉽지만 일단은 내가 이해하는것에 만족하는걸로.. 역시 C는 재미가 없다..
반응형'프로그래밍 > C' 카테고리의 다른 글
[C언어] 7-1. 구조체 (0) 2014.04.09 [C언어] 6-2. 포인터 (0) 2014.04.07 [C언어] 5-4. 기억클래스 (0) 2014.04.06 [C언어] 5-3. 사용자 정의 함수 (0) 2014.04.05 [C언어] 5-2. 표준함수 (0) 2014.04.05