Low Level Programing에서 메모리에 접근하고 해당 주소와 값을 확인하며 다른 해당 주소를 참조하는 방법을 확인해 볼게요.
앤퍼선트와 에스터리스크가 이를 가능하게 해주는 특수문자에요.
아래 사진1의 예시를 볼게요.
10, 2
가 이쁘게 출력되네요.
<사진1>
&기호를 이용해서 해당 변수의 메모리 주소를 확인했어요.
<사진2>
우항에 &기호를 변수 앞에 두고 할당하면 끝이에요.
콘솔에 찍힌 결과는 동일하조. 하지만 호출한 방식의 차이점과 무엇을 의미하는지 잘 파악해야해요.
*
기호를 변수 앞에 붙이면 되요.
<사진3>
아래는 더 흥미롭게 변수가 다른 변수의 주소값을 갖고 있으며 더군다나 이를 see through하여 보니 2라는 정수 값을 확인 할 수 있으며 실제 b라는 변수의 주소를 확인하면 별도로 메모리에 올라와 있는 것도 확인 가능해요.
<사진4>
처음 변수 a의 값인 2를 b라는 변수 정의 이후 바로 10으로 바꿔버리면 어떻게 될까요?
<사진4>
한마디로 큰 틀의 변화는 없으며 알맹이(2->10)만 쏙~ 바뀌고 나머지 주소가 그대로 유지되기에 b가 see throuhg하여 보는 값도 10이며 주소는 기존 그대로 동일한 상태입니다.
우항에 정수 222 두고, 좌항에 *b를 두면 변수 a의 값이 변경되요.
<사진5>