C, C++

포인트 함수 < 포인트로 함수를 호출하는 방법>

슬픈달 2019. 1. 23. 09:47
반응형

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

typedef int (*msgFuncPtr) (void *param1);
int Sum(void* ptMsg);

typedef struct _FUNC_PTR
{
    msgFuncPtr func;
}Func_ptr;

typedef struct _TMEP
{
 int a;
 int b;
}Temp;

int main()
{
 Func_ptr stFuncPtr;
 Temp* ptTemp = new Temp;

 ptTemp->a = 2;
 ptTemp->b = 3;

 stFuncPtr.func = Sum;  // 호출할 함수가 Sum이라는 것을 설정
 stFuncPtr.func(ptTemp);  // Sum 함수를 호출하는 부분
 return 0;
}

int Sum(void* ptMsg)
{
 Temp* ptTemp = (Temp*)ptMsg;
 printf("x + Y = %d\n", ptTemp->a + ptTemp->b);

 return ptTemp->a + ptTemp->b;
}

반응형

'C, C++' 카테고리의 다른 글

문자열 치환  (0) 2019.01.23
C++ 한글 체크  (0) 2019.01.23
define, macro  (0) 2019.01.23
1Byte를 2진수로 변경  (0) 2019.01.23
inet_addr, inet_ntoa  (0) 2019.01.23