포인터 선언
int* pNum = nullptr;
아직 가리키는 대상이 없을 때는 널 포인터로 시작하면 우연한 주소 접근을 피합니다.
`&`는 변수의 주소를 얻고, `*`는 포인터가 가진 주소로 이동해 값을 읽거나 바꿉니다. 선언의 `*`와 역참조의 `*`는 문맥으로 구분합니다.
int* pNum = nullptr;
아직 가리키는 대상이 없을 때는 널 포인터로 시작하면 우연한 주소 접근을 피합니다.
pNum = #
주소 연산자로 얻은 위치를 포인터에 저장하면 포인터가 그 변수를 가리킵니다.
*pNum = 20;
포인터가 가리키는 메모리의 값을 바꾸므로 원래 변수 `num`의 값도 바뀝니다.
값 10이 특정 주소에 저장됩니다.
변수의 위치를 주소 값으로 꺼냅니다.
주소를 저장해 num을 가리킵니다.
그 주소의 실제 값에 접근합니다.