함수 포인터 선언::
#include <stdio.h>
void (*FunC)(void);
// void형 입력, void형 리턴을 갖는 함수의 주소를 저장할 수 있는 함수 포인터 "FunC"
void My_print(void)
{
printf("출력되었습니다. \n");
}
int main(void)
{
FunC = My_print;
FunC(); // 출력되었습니다.
return 0;
}
함수 포인터 배열 선언::
#include <stdio.h>
void (*FunC[10])(void);
void My_print(void)
{
printf("출력되었습니다. \n");
}
int main(void)
{
FunC[0] = My_print;
FunC[0](); //[ 출력되었습니다. ]출력.
return 0;
}
함수 포인터를 Return(반환)하는 함수 [1]::
#include <stdio.h>
void My_print(void)
{
printf("출력되었습니다. \n");
}
void (*FunC(int option))(void)
{
switch(option)
{
case 0:
return My_print;
default:
return NULL;
}
return NULL;
}
int main(void)
{
void (*My_FunC)(void); // 함수 포인터 선언
int option = 0;
My_FunC = FunC(option); // My_print 주소 리턴.
My_FunC(); // 출력되었습니다.
return 0;
}
함수 포인터를 Return(반환)하는 함수 [2]::
#include <stdio.h>
typedef void (*Return_FunC)(void); // 함수포인터 "Return_FunC" Typedef 선언.
void My_print(void)
{
printf("출력되었습니다. \n");
}
Return_FunC FunC(int option)
{
switch(option)
{
case 0:
return My_print;
default:
return NULL;
}
return NULL;
}
int main(void)
{
void (*My_FunC)(void); // 함수 포인터 선언
int option = 0;
My_FunC = FunC(option); // My_print 주소 리턴.
My_FunC(); // 출력되었습니다.
return 0;
}
함수 포인터를 입력으로 받는 함수 [1]::
#include <stdio.h>
typedef void (*Return_FunC)(void); // 함수포인터 "Return_FunC" Typedef 선언.
void FunC(Return_FunC Name)
{
Name();
}
void My_print(void)
{
printf("출력되었습니다. \n");
}
int main(void)
{
FunC( My_print );
return 0;
}
함수포인터를 입력으로 받는 함수 [2]::
#include <stdio.h>
void FunC(void (*My_FunC)(void))
{
My_FunC();
}
void My_print(void)
{
printf("출력되었습니다. \n");
}
int main(void)
{
FunC( My_print );
return 0;
}
'C/C++ Programming' 카테고리의 다른 글
How to Screen Capture in C++ Using Bitmap Library. (0) | 2014.03.12 |
---|---|
Test Module (0) | 2013.11.04 |
첫 보드게임 온라인 제작 프로젝트 START!! (0) | 2013.10.13 |
C++ Study LOG. (0) | 2013.08.07 |
C Code Test. (0) | 2013.07.23 |