본문 바로가기

Computer/C

Const (포인터)

면접 준비를 하면서 자주 받는 질문이여서 한번 정리를 해볼까 합니다.
변수에 관련된 경우의 수는 3가지가 있습니다.
포인터가 가리키는 변수의 상수화, 포인터의 상수화, 둘 다 상수화 로 const 키워드의 사용된 위치를 보면 쉽게 알 수 있습니다.

1. 포인터가 가리키는 변수의 상수화 ( const int* p = &a )
   포인터 p가 가르키는 변수를 상수화 하겠다 는 것입니다. 
   하지만 포인터 p를 통해서 변수 a의 값을 변경하는 것만 막는 것이지, 포인트 p가 가리키는 변수를 상수화 한다는 것은 아닙니다.

2. 포인터의 상수화
  포인터 p를 상수화 한다는 것입니다.
  즉, 포인터 p가 지니는 주소 값을 변경할 수 없다 는 것 입니다.
  대신 포인터 p가 가르키는 변수의 값은 변경할 수 있다 는 것 있습니다.

3. 포인터와 포인터가 가리키는 변수의 상수화
  포인터 p와 포인터 p가 가르키는 변수 둘다 상수화 한다 는 것입니다.
 


'Computer > C' 카테고리의 다른 글

Volatile variable  (0) 2010.02.22
Const (함수)  (0) 2010.02.22