Как объявить указатель на функцию в C, чтобы сам указатель был изменчив.
static void volatile (* f_pointer)(void*);
static void (volatile * f_pointer)(void*);
static void (* volatile f_pointer)(void*);
Почему я спрашиваю об этом? Я читал в http://wiki.answers.com/Q/Volatile_example_code_sample_coding_of_volatile_pointer о летучих указателях.
Иногда возникают проблемы с волатильными указателями и указателем на volatile:
Теперь выясняется, что указатели на изменчивые переменные очень распространены. Обе эти декларации объявляют foo как указатель на переменное целое число:
volatile int * foo;
int volatile * foo;
Летучие указатели на энергонезависимые переменные очень редки (я думаю, что использовал их один раз), но мне лучше пойти и дать вам синтаксис:
int * volatile foo;
Итак, я хочу получить volatile указатель на функцию, а не указатель на функцию "volatile".
Спасибо