#include <stdio.h>

int main(void)
{
        int a=10;
        int b=20;
        int *p1=&a;
        int *p2=&b;
        int *temp;

        (*p1)--;
        (*p2)--;

        temp=p1;
        p1=p2;
        p2=temp;

        printf("%d, %d\n", *p1, *p2);
        printf("%d, %d, %d, %d, %d\n", &a, &b, p1, p2, temp);

        return 0;
}

원래 포인터 p1이 a
                  p2가 b를 가리키는걸

p1이 b로 p2가 a로 바꾸는건데

난 주소값도 다 바뀌는건 줄 알았는데 그 주소에 변수값만 바뀌네;;

주소는 고유한건가? *p1=&a라 했으면 여기서 주소값은 이제 손을 못대는거임? 그리고 저기 temp도 a랑 p1이랑 주소값이 같은데 한 주소에 여러개가 들어갈수 있는거에여? 걍 갑자기 공부하다 생각났는데..