Array of Function Pointer in C

#include
int add(int a, int b)
{
return a+b;
}
int subtract(int a, int b)
{
return a-b;
}
int multiply(int a, int b)
{
return a*b;
}

int main()
{
// fun_ptr_arr is an array of function pointers
    int (*fun_ptr_arr[])(int,int) = {add,subtract,multiply};
unsigned int ch, a = 15, b = 10;

printf("Enter Choice: 0 for add, 1 for subtract and 2 "
"for multiply\n");
scanf("%d", &ch);

if (ch > 2) return 0;

    int i = (*fun_ptr_arr[ch])(a, b);
   printf("%d\n",i);
return 0;
}

Comments