• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

7:05 변수의 주소

21.12.12 18:04 작성 조회수 168

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

안소님의 프로필

안소

2021.12.15

"*a_ptr는 a를 가리키니, 그 주소 역시 &a와 결국 같은 말 아닌가? 하는 생각입니다." 

-> 맞습니다! *a_ptr 은 곧 a 이니 &*a_ptr 은 &a 와 같습니다.

"혹시 말씀하신 포인터변수 자체의 주소라는 것은 &a_ptr 라고 생각하면 맞는건가요?"

-> 넵