- const 변수가 포인터변수의 앞에오면 포인터가 가리키는 변수의 상수화 한다.

int a=10;
const int* p = &a;
*p = 30;  // Error!
a = 30;   // OK!


- const 가 포인터변수의 뒤에오면 포인터변수 자체를 상수화 한다.
int a=10;
int b=20;
int* const p = &a;
p=&b;  // Error!
*p=30;  // OK!


- 함수포인터
  --> 함수명 자체가 함수포인터 이다.
  --> 함수포인터는 아래와같이 선언한다.
void (*fPtr)(void);
  --> 이런 형태는 아래와같이 포인터를 할당할수 있다.
int Add(void);

fPtr = Add;

- Void 형 포인터
  --> 아무런 형태가 없는 포인터
  --> 사용하기위해서는 아래와같이 형 변환을 해야한다.

int main(void)
{
int n=10;
void *vp = &n ; // void 포인터 선언 및 초기화
*((int*) vp) = 20; // n 값을 변경하기 위해서 int 형 포인터로 형 변환
. . . . .

- 포인터의 포인터 (**)
  --> 포인터의 포인터값을 가르키는 포인터


- malloc 와 free
  --> c++ 로 오면서 new 와 delete 로 바꼈음.
 

'2007년1학기 > C++프로그래밍' 카테고리의 다른 글

C++ 에서 달라진점  (21) 2007.03.21
C++ 강의노트 3장  (40) 2007.03.21
C++ 2강 자료  (683) 2007.03.14
C++프로그래밍  (29) 2007.03.09
강의1  (52) 2007.03.07
by cranix 2007. 3. 14. 14:21