double (*)(double)
is the signature of a function pointer for a function that takes one double
argument and returns double
. At all
X (*)(A, B, C) // any number of args
is a pointer to a function that takes args of types (A, B, C)
and returns a value of type X
, for example.
X my_func(A, B, C) { return X();
will have the signature above.
So, in your case, get_fun
is a function that returns a pointer to a function.
source share