6번 줄에서 다음 3가지 일이 전부 일어납니다.
(1) a라는 int형 포인터가 선언됨
(2) int형 1개분의 메모리 공간이 할당됨
(3) (2)에서 할당된 공간의 주소가 a의 값으로 저장됨(= 할당된 공간을 a가 가리킴)
7번 줄은 a가 가리키는 공간에 40이라는 값을 저장할 뿐, 주소와는 관계가 없습니다.
8번 줄에서는 a가 가리키는 공간의 주소값, 9번 줄에서는 a 자신의 주소값이 출력됩니다.
6번 줄에서 다음 3가지 일이 전부 일어납니다.
(1) a라는 int형 포인터가 선언됨
(2) int형 1개분의 메모리 공간이 할당됨
(3) (2)에서 할당된 공간의 주소가 a의 값으로 저장됨(= 할당된 공간을 a가 가리킴)
7번 줄은 a가 가리키는 공간에 40이라는 값을 저장할 뿐, 주소와는 관계가 없습니다.
8번 줄에서는 a가 가리키는 공간의 주소값, 9번 줄에서는 a 자신의 주소값이 출력됩니다.
댓글을 작성하려면 로그인해야 합니다.
minky5576 1년 전
new 연산자를 이용해서 동적할당을 사용할 수 있는데
a 두개를 출력하면 주소값이 나옵니다.
그냥 a는 40이라는 값에 주소라는 거일테고
&a는 포인터변수의 주소라는 말인데
여기서 저는 이해가 안가는게 이 40은 어디 변수에도 선언이 되지 않았는데 어떻게 주소가 있는거죠?
제가 이해한거로라면 new int는 메모리에 시작주소이고 이 시작주소를 포인터변수 a에다 넘겨준다는 말인건가요>?