Использование указателей в программах на языках С/С++/С# . Васильев В.Г. - 13 стр.

UptoLike

Составители: 

словами, символическим именем, или указателем. Покажем это на следующем
примере.
/* программа # 1.13 */
# include < stdio.h>
void bell(void);
void main()
{
void (*f)( void );
f = bell;
f();
(*f)(); // можно и так
}
/* эта функция издает гудок */
void bell (void)
{
putchar(7);
}
Объявление void (*f)( void );означает, что f является указателем на функцию,
возвращающую тип void c пустым списком формальных параметров. К
примеру объявление int (*func)( int, float );означает что func ecть указатель на
функцию возвращающую тип int c двумя формальными параметрами типа int и
float. В объявлении указателя на функцию очень важным является синтаксис.
Обратите на это внимание.
Если в программе объявлен указатель, то он должен быть инициализирован.
Это сделано в операторе f = bell. В данном случае указателю f присвоен адрес
функции bell. Идентификатор bell - есть символический адрес памяти, с
которого будет выполняться функция. Далее в программе последовательно
дважды выполняется обращение к функции bell через указатель. При этом
компьютер дважды издаст звуковой сигнал.
В программах указатели на функции, в основном, используются
для сохранения адресов программ обработчиков прерываний;
для передачи функций в качестве формальных параметров другим
функциям.
Следующая программа # 1.14 демонстрирует такую возможность при
вычислении интеграла методом площадей.
13