Question: How can I create a "function pointer" (and (for example) the function has parameters) in C?

Answer: 
```
    typedef int (*funcptr)(int a, float b);

    funcptr x = some_func;

    int a = 3;
    float b = 4.3;
    x(a, b);

```
You can also define functions that return pointers to functions:

```
int (*f(int x))(double y);

```

f is a function that takes a single int parameter and returns a pointer to a function that takes a double parameter and returns int.