포인터 기본

포인터 주소값

주소 연산자, 간접 참조, nullptr, 포인터 크기를 함께 이해하면 값과 위치를 분리해서 읽을 수 있습니다.

주소

객체의 위치를 얻음

&value는 value가 놓인 메모리 위치를 포인터 값으로 만듭니다.

&value
포인터

주소를 저장

int* p는 int 객체의 주소를 담을 수 있는 변수입니다.

int* p
간접 참조

가리키는 값을 읽거나 씀

*p는 p가 가리키는 int 객체에 접근합니다.

*p = 3
nullptr

아무것도 가리키지 않음

유효한 대상이 없음을 0보다 명확하게 표현하는 널 포인터 값입니다.

p = nullptr
유효성간접 참조 전에 nullptr이 아닌지, 대상 수명이 끝나지 않았는지 확인합니다.
크기포인터 크기는 가리키는 타입 크기가 아니라 주소 표현 크기에 좌우됩니다.
용도큰 객체 전달, 동적 메모리, 다형성처럼 주소가 필요한 이유가 있어야 합니다.