Для того, щоб використовувати в програмі покажчик на функцію, необхідно виконати наступні дії:
• прийняти адресу функції;
• оголосити покажчик на функцію;
• використовувати покажчик на функцію для виклику цієї функції.
Кожна функція характеризується типом поверненого значення, ім'ям і списком типів її параметрів. Якщо ім'я функції використовувати без подальших дужок ( ) і параметрів, то воно виступатиме як покажчик на цю функцію, і його значення визначатиметься як адреса розміщення функції в пам'яті (перший байт). ). Це значення можна буде привласнити іншому покажчику. Тоді цей новий покажчик можна буде використовувати для виклику функції. Покажчик на функцію як змінна вводиться окремо від визначення і оголошення (прототипу) якій-небудь функції. Покажчик на функцію – змінна, яка містить адресу деякої функції. Відповідно, непряме звернення по цьому покажчику є викликом функції.
Синтаксис визначення покажчика на функцію:
тип _функції(*ім’я _ показника)(специфікация_параметрів)
де тип
_функції – визначає тип поверненого функцією значення;
ім’я _ показчика – ідентифікатор;
специфікація _ параметрів – визначає склад і типи параметрів функції.
Наприклад:
int (*pf)(); // без контролю параметрів виклику
int (*pf)(void); // без параметрів, з контролем по прототипу
int (*pf)(int, char*); // з контролем по прототипу
Синтаксис виклику функції за допомогою покажчика:
(*ім’я _ показника)(список _ фактичних_параметрів);
значенням ім’я _ показника служить адреса функції, а за допомогою операції розіменування * забезпечується звернення за адресою до цієї функції.
Арифметичні операції над покажчиками на функції заборонені.