Ex34-일반 배열에는 값을 저장하지만, 포인터 배열은 주소를 저장

CODEDRAGON Development/C, C++

반응형

   

일반 배열에는 값을 저장하지만, 포인터 배열은 주소를 저장합니다.

   

   

학습내용

일반 배열

값을 저장하는 배열

포인터 배열

주소를 저장하는 배열

   

   

메모리 구조

   

   

소스코드

   

#include <stdio.h>

int main(void) {
                int a=10, b=20, c=30;

                //
포인터 배열 선언
                int* ap[3]={NULL, NULL, NULL};

                //
포인터 배열의 요소로 주소를 저장하여 체계적으로 관리할 있습니다.
                ap[0]=&a;
                ap[1]=&b;
                ap[2]=&c;

                printf("%x %x %x \n", &a, &b, &c);
                // ap[i] == *(ap+i)
                printf("%x %x %x \n", ap[0], ap[1], ap[2]);     // ap[0] == *(ap+0)
                printf("%x %x %x \n", *(ap+0), *(ap+1), *(ap+2));       // ap[1] == *(ap+1)
                printf("---------------------\n");

                printf("%d %d %d \n", *&a, *&b, *&c);
                printf("%d %d %d \n", *ap[0], *ap[1], *ap[2] ); // ap[0] == *(ap+0)
                printf("%d %d %d \n", **(ap+0), **(ap+1), **(ap+2) );   // ap[1] == *(ap+1)

                return 0;
}


   

   

출력결과