함수 포인터는 특정 함수에 대한 메모리 주소를 담을 수 있는 것이라고 한다.


함수 포인터를 쓰는 이유는

1. 프로그램 코드가 간결해진다.

2. 함수포인터를 배열을 이용하여 중복되는 코드를 줄일수 있다.

3. 상황에 따라 해당되는 함수를 호출 가능(ex: 계산기...)

그 외에도 콜백함수를 함수포인터로 구현할 수 있다.


int (*FuncPtr) (int,int); //함수포인터의 정의

반환형이 int형이고 인자로 int형 변수 2개를 가지는 함수를 담을 수 있는 함수 포인터이다.

(ex: int add(int x, int y) 같은 함수)


사용시에는 FuncPtr = add 혹은 FuncPtr = &add 라고 사용 하면됨.


typedef 활용가능,

typedef int (*funcPtr)(int ,int )


(ex: FuncPtr testFP = NULL;

testFP = add; )


//내가 해본 함수포인터 예제


// 다른 블로그에서 가져온 예제


출처: http://norus.tistory.com/8 - 노루의 씨분투 세상



'이론 > C/C++' 카테고리의 다른 글

함수포인터 활용  (0) 2016.10.27
C/C++ 시간 정보 얻기  (0) 2015.03.08
C++ 문자열 너비포함 출력  (0) 2015.03.08
C++에서 2차원 배열 동적할당, 반납  (0) 2015.01.10
Posted by *me
: