ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [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

    댓글

Designed by Tistory.