프로그래밍/C

C ] 포인터와 const

eteo 2023. 5. 30. 22:31

 

const는 변수나 함수 매개변수를 선언할 때 사용되는 한정자로 값을 변경할 수 없음을 나타낸다. 변수를 상수로 취급하고자 할 때 유용하며, 많은 곳에서 참조되고 변경되는 것을 원하지 않는 정적인 정보를 보호하는데 사용된다.

 

 

포인터 형식과 const 한정자가 같이 쓰일 때 const의 위치에 따라 다음과 같은 차이가 있다.

 

 

 

1. 상수를 가리키는 포인터 : ptr의 역참조를 통해 값을 변경할 수 없지만, ptr이 다른 주소를 가리키도록 변경할 수 있다.

const int* ptr

 

 

 

 

 

2. 상수 포인터 : ptr 자체를 다른 주소를 가리키도록 변경할 수 없지만, ptr의 역참조를 통해 값을 변경할 수 있다.

int* const ptr

 

 

 

 

 

3. 상수를 가리키는 상수 포인터 : ptr이 가진 주소를 변경할 수 없으며, ptr 역참조를 통해 값을 변경할 수 없다.

const int* const ptr