반응형
함수 포인터는 함수를 가르키는 포인터입니다. 즉, 함수의 주소를 저장하는 포인터 변수 입니다.
함수 포인터를 선언 할 때는 반환 타입이 무엇인지.. 어떤 매개변수를 갖는 함수인지를 나타내어 선언 합니다.
만약 void Print(char* szMessage) 라는 함수를 가르키기 위해서는 void (*pFunc)(char*) 로 선언하게 되고,
pFunc라는 변수를 사용하여 반환 타입이 void이고, 매개변수로는 char*를 갖는 함수의 주소를 저장 할 수 있습니다.
- 소스 코드
#include <stdio.h>
void Print(char* szMessage)
{
printf("%s\n", szMessage);
}
void Print(char* szMessage)
{
printf("%s\n", szMessage);
}
int main(int argc, char* argv[])
{
void (*pfunc)(char*);
pfunc = Print;
pfunc("hello, function pointer~");
return 0;
}
반응형
'프로그래밍 > C++' 카테고리의 다른 글
비트연산 정리 (1) | 2011.11.21 |
---|---|
printf 출력 서식 (0) | 2011.10.18 |
C 언어 레퍼런스 - localtime 함수 (0) | 2011.10.13 |
[System Call] 메모리 맵 - mmap(), munmap(), msync() (0) | 2011.03.04 |
[C++] 상속 두번째, 세가지 형태의 상속 (private, protected, public) (0) | 2011.03.03 |
매크로 (0) | 2010.12.21 |
Unicode 와 ANSI 문자의 변환을 해주는 매크로 (0) | 2010.12.11 |
가변인자 사용하기 (0) | 2010.11.12 |
const 위치에 따른 동작 (0) | 2010.11.12 |
C++ 파일 입출력 (0) | 2010.10.27 |