以下の例では、関数へのポインタとしてfunc_ptrが宣言され、そこへ関数my_functionのアドレスを割り当てている。そしてfunc_ptrを通じて関数を呼び出している。 #include <stdio.h> static int my_function(int a) { printf("my_function: %d\n", a); return 2 * a + 3; } int main(void) { int (*func_ptr)(int a) = my_function; /* あるいは以下でも可能 */ /* int (*func_ptr)(int) = &my_function; */ int x; x = (*func_ptr)(10); /* あるいは以下でも可能 */ /* x = func_ptr(10); */ printf("main: %d\n", x);