1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#include <stdio.h> void g(double f) { printf("%f\n", f); } void (*f(int n)) (double) { return (n > 0) ? g : NULL; } main() { f(1)(123); }
1
123.000000