티스토리 뷰
반응형
모든 강의 자료 : www.codingnow.co.kr/
함수포인터를 사용하여 함수를 호출하고 결과를 얻어오는 예제를 통해
포인터의 쓰임새를 알아봅니다.
자세한 사항은 첨부된 동영상을 참고해 주세요.
다음은 함수포인터를 선언하고 함수를 호출하는 예제입니다.
#include <stdio.h>
float add(int val1, int val2)
{
printf("add = ");
return val1+val2;
}
float mul(int val1, int val2)
{
printf("mul = ");
return val1 * val2;
}
void main(void)
{
int (*fp)(int, int);
int ret = 0;
fp = add;
ret = fp(3, 4);
printf("sum = %d\n", ret);
fp = mul;
ret = fp(3, 4);
printf("mul = %d\n", ret);
}
다음은 함수호출을 배열형태로 선언하여 반복문을 통해 함수를 호출하는 예제입니다.
#include <stdio.h>
float add(int val1, int val2)
{
printf("add = ");
return val1+val2;
}
float mul(int val1, int val2)
{
printf("mul = ");
return val1 * val2;
}
float div(int val1, int val2)
{
printf("div = ");
return (float)val1 / val2;
}
void main(void)
{
float (*funs[])(int, int) = {
add,
mul,
div
};
for(int i=0; i<3; i++)
{
printf("%.2f\n", funs[i](3, 4));
}
}
포인터를 사용하여 함수를 호출하여 C언어의 확장성을 확인 할 수 있습니다.
반응형
'C언어 강의' 카테고리의 다른 글
#C언어 VS #파이썬 :: 활용편 ::버블소트 (Bubble Sort)구현하기 프로그래밍 (0) | 2021.03.17 |
---|---|
C언어와 파이썬 활용하여 두 수 사이의 배수의 합을 구하기 (0) | 2021.02.10 |
C언어 기초활용하여 램덤수 맞추기 게임 만들기 (0) | 2021.02.01 |
C언어 기초활용하여 10진수를 2진수로 출력하기 입니다. (0) | 2021.01.28 |
C언어 기초 GCC 컴파일러 설치하기 - 신규다운로드 사이트 (0) | 2021.01.27 |