포인터(주소관련 연산자사용)에 대해..
희선
2023.04.01
#include stdio.h
int main(void)
{
int a=2005;
int* pA=&a;
printf(pA : %d \n, pA); //(직접 접근) pA가 가지고 있는 a의 값 즉2005가 있는 메모리 주소나타내는거인가요?
printf(&a : %d \n, &a); //(간접 접근) 이것 역시 2005가 들어 있는 a의 메모리 주소를 나타낸거 같은데 맞나요?
(*pA)++;//a++와 같은 의미를 지닌다. 그래서
printf(a : %d \n, a); //2005에1이 증가되어 2006이되는거고
printf(*pA : %d \n, *pA); //2006이 들어있는 메모리참조해서 2006을 출력하는건가요??
return 0;
}
이거 옛날에 배웠는데 몇년 지나니까 까먹어서 그런데 위에 제가 주석문에 쓴 글들이 맞는건가요??
헷갈리네요 자세히좀 알려주세요 ..
-
꽃겨울
네 맞아요. 실행해보시면 확인하실 수 있어요.