728x90

포인터란?

메모리 주소를 가르킨다.

 

포인터변수란

메모리 주소를 갖고 있는 변수

 

포인터 변수 선언

int* pointer

int형 변수 메모리 주소를 가르킨다

ex)

int num =4;

int* pointer = #

 

&란?

변수의 주소값을 반환한다.

포인터 변수에는 주소값만 할당 가능하므로

int num =4;

int* pointer = #

와 같이 사용한다

 

*란?

&기호가 변수의 주소값을 반환한다면

반대로 *는 포인터변수가 가리키는 실제 값을 반환한다

ex)

int* pointer;

pointer // address

*pointer // value 

 

포인터 증감 +,-

int* pointer;

pointer++; ???

포인터가 가리키는 주소값의 다음 주소값을 가리킨다

주의할것은 기존에 포인터가 0을 가리킨다면 +1 증가시켰을떄

1이 아닌 4를 가리킨다.

포인터변수 타입이 int형이고 int형은 4바이트 이기 때문에 

int형의 다음 값을 가리키는 주소값은 4바이트 차이가 나는 주소값이된다.

 

 

728x90

+ Recent posts