본문 바로가기
프로그래밍/C

C ] 포인터와 const

by eteo 2023. 5. 30.

 

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

 

 

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

 

 

 

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

const int* ptr

 

 

 

 

 

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

int* const ptr

 

 

 

 

 

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

const int* const ptr

 

'프로그래밍 > C' 카테고리의 다른 글

extern "C" {}  (0) 2023.07.18
C, C++ ] system("pause") 대신 사용할 수 있는 방법  (0) 2023.07.11
C ] 비트필드와 공용체 사용  (0) 2023.05.29
C언어 ] setjmp(), longjmp()  (0) 2023.05.07
C언어 ] 맵 자료구조 구현  (0) 2023.05.07