본문 바로가기
프로그래밍언어/C 언어

[혼자 공부하는 C언어] 포인터 배열 선언과 사용

by khsnote22 2022. 12. 13.

http://www.yes24.com/Product/Goods/74269921

 

혼자 공부하는 C 언어 - YES24

혼자 해도 충분하다! 1:1 과외하듯 배우는 C 프로그래밍 자습서이 책은 독학으로 C 언어를 배우는 입문자가 ‘꼭 필요한 내용을 제대로’ 학습할 수 있도록 구성했다. ‘무엇을’ ‘어떻게’ 학

www.yes24.com


#include <stdio.h>

int main(void)
{
    char *pary[5];
    int i;
    
    pary[0] = "dog";
    pary[1] = "elephant";
    pary[2] = "horse";
    pary[3] = "tiger";
    pary[4] = "lion";
    
    for(i=0; i <5; i++)
    {
        printf("%n", pary[i]);
    }
    
    return 0;
}

문자열 상수는 변경이 불가능한 메모리 영역에 보관되고 포인터 배열에는 그 첫 번째 문자의 주소가 저장됩니다. 

포인터 배열은 다른 배열처럼 메모리에 연속해서 위치합니다. 다만 각 요소에 저장된 주소 값은 개별적인 문자열들의 주소이므로 연속성을 지니지 않습니다.

 

char 포인터 배열의 초기화는 2차원 char 배열의 초기화와 같습니다. 물론 선언과 동시에 문자열 상수로 초기화하는 것도 가능합니다.