작성
·
195
0
안녕하세요 강의 잘 보고있습니다.
7:05 부터 말씀하신 부분에 대해 질문이 있습니다.
`포인터 앞에도 앰퍼센드를 붙여서 주소를 출력할 수 있지만, 그것은 포인터 변수 자체의 주소를 의미하는 것이고, 포인터가 가리키고 있는 주소가 아니다` 라고 말씀하신 부분입니다.
그래서 임의의 변수 a와 a를 가리키는 포인터변수를 만들어서
&a와 &*ptr의 주소가 같은지 출력을 해봤는데
결과가 1이 나왔습니다.
제가 생각하기에도 당연한 것이, &a는 변수 a의 주소이고
*a_ptr는 a를 가리키니, 그 주소 역시 &a와 결국 같은 말 아닌가? 하는 생각입니다.
강의 7:05부분에서 말씀하신 내용을 제가 잘못 이해한 것인가 궁금하며 이렇게 질문올립니다. 감사합니다.
int a = 10;
int* a_ptr = &a;
printf("%d", &a,==&*a_ptr);
+ 뒤늦게 생각이 났는데,
혹시 말씀하신 포인터변수 자체의 주소라는 것은
&a_ptr 라고 생각하면 맞는건가요?
답변 1
0
"*a_ptr는 a를 가리키니, 그 주소 역시 &a와 결국 같은 말 아닌가? 하는 생각입니다."
-> 맞습니다! *a_ptr 은 곧 a 이니 &*a_ptr 은 &a 와 같습니다.
"혹시 말씀하신 포인터변수 자체의 주소라는 것은 &a_ptr 라고 생각하면 맞는건가요?"
-> 넵