Информатика и технология программирования


Определение функции


Функция состоит из двух частей: ЗАГОЛОВКА ФУНКЦИИ, создающего " интерфейс" функции к внешнему миру, и ТЕЛА ФУНКЦИИ, реализующего заложенный и нее алгоритм с использованием внутренних локальных данных. Вместе заголовок и тело составляют ОПРЕДЕЛЕНИЕ ФУНКЦИИ.


//------------------------------------------------------bk15-01.cpp


// Результат функции


// | Имя функции


// | |


int sum(int A[], int n)
// -------------- Формальные параметры


//---- ------------------ Тело функции (блок)


{
int s,i; // Локальные(автоматические) переменные блока


for (i=s=0; i&#60n; i++) // Последовательность операторов блока


s +=A[i];
return s ; // Значение результата в return


}

Определение функции представляет собой всего лишь " заготовку" программы. Выполнение ее происходит тогда, когда в процессе вычисления выражения встречается вызов функции.


void main()
{
int ss, x, B[10]={ 1,6,3,4,5,2,56,3,22,3 };
ss = x + sum(B,10) ;
// Вызов функции : ss = x + результат sum(фактические параметры )


}

Интерфейс функции состоит из формальных параметров (вход) и результата (выход).

ФОРМАЛЬНЫЕ ПАРАМЕТРЫ -- это собственные переменные функции, которым при ее вызове присваиваются значения фактических параметров.

В заголовке функции имеется список формальных параметров, в котором они имеют синтаксис определений обычных переменных. Использование их в теле функции также не отличается от обычных переменных.

контексте (окружении) выражения, где был произведен ее вызов

Поскольку все переменные в Си имеют типы, тип результата также должен быть определен. Это делается в заголовке функции тем же способом, что и для обычных переменных. Используется тот же самый синтаксис, в котором имя функции выступает в роли переменной-результата:


int sum(... // Результат - целая переменная


char *FF(... // Результат - указатель на символ

Значение переменной-результатa устанавливается в операторе return , который производит это действие наряду с завершением выполнения функции и выходом из нее.


Начало  Назад  Вперед