Вызов подпрограмм
Вызов функции имеет следующий формат:
имя функции ([список выражений]);
Список выражений представляет собой список фактических параметров, передаваемых в функцию. Этот список может быть и пустым, если в определении функции отсутствуют параметры, но наличие круглых скобок обязательно.
Функция, если она возвращает какое-либо значение (подпрограмма-функция), может быть вызвана и в составе выражения, например:
y=sin(x); //sin - это имя подпрограммы-функции
if(rus(c))SvDiod=Gorit;//rus- это имя подпрограммы-функции
Выполнение вызова функции происходит следующим образом:
1. Вычисляются выражения в списке выражений и подвергаются обычным арифметическим преобразованиям. Затем тип полученного фактического аргумента сравнивается с типом соответствующего формального параметра. Если они не совпадают, то либо производится преобразование типов, либо формируется сообщение об ошибке. Число выражений в списке выражений должно совпадать с числом формальных параметров. Если в прототипе функции указано, что ей не требуются параметры, а при вызове они указаны, формируется сообщение об ошибке.
2. Происходит присваивание значений фактических параметров соответствующим формальным параметрам.
3. Управление передается на первый оператор функции.
Поскольку имя функции является адресом начала тела функции, то в качестве обращения к функции может быть использовано не только имя функции, но и значение указателя на функцию. Это значит что функция может быть вызвана через указатель на функцию.
Дата добавления: 2015-10-09; просмотров: 707;