Pointer to Function Pointer
10,103
Solution 1
typedef void(*func_ptr_t)(void); // a function pointer
func_ptr_t* ptr_to_func_ptr; // a pointer to a function pointer - easy to read
func_ptr_t arr[2]; // an array of function pointers - easy to read
void(**func_ptr_ptr)(void); // a pointer to a function pointer - hard to read
void(*func_ptr_arr [2])(void); // an array of function pointers - hard to read
Solution 2
typedef int32_t FP(void);
FP *fp[2] = { test_function1, test_function2 };
FP **p = fp;
Author by
Admin
Updated on June 18, 2022Comments
-
Admin almost 2 years
Is it possible to create a pointer to a function pointer, i.e.
int32_t (*fp[2])(void) = {test_function1, test_function_2}; // initialize a function pointer <unknown> = fp;
What needs to be written in place of unknown? With "normal" arrays, I could do this:
int a[2] = {0, 1}; int* p = a;
Many thanks in advance.