[c언어] 메모리 주소를 저장하는 포인터 변수

|



포인터는 주소를 가리키며, 포인터 변수는 주소를 저장하는 변수

// 포인터 변수를 선언하고 주소를 저장하여 출력

#include <stdio.h>
int main(void)
{
    long k=8;
    long *p;
    p=&k;
    printf("k의 주소: %u\n", &k);
    printf("p의 주소: %u\n", &p);
    printf("p의 값   : %u\n", p);
    printf("p가 가리키는 곳의 값: %d\n", *p);
    return 0;
}

// 실행 결과




// 다른 주소 대입 후의 포인터의 변화

#include <stdio.h>
int main(void)
{
    long k=8, i=3;
    long *p;
    p=&k;
    printf("k의 주소: %u\n", &k);
    printf("p의 값   : %u\n", p);
    printf("p가 가리키는 곳의 값: %d\n", *p);
    p=&i;
    printf("i의 주소: %u\n", &i);
    printf("p의 값  : %u\n", p);
    printf("p가 가리키는 곳의 값: %d\n", *p);
    return 0;
}

// 실행 결과

  ::