Я задаю несколько конкретных вопросов.
Что касается вопроса № 2, то я имею в виду следующее:
void s(void) { //... } void f(function) { // what should I put as type to pass a function as an argument //... } f(s);