Глава 4
Использование функций при
программировании на C++
В практике программирования часто складываются ситуации, когда одну и
ту же группу операторов, реализующих определённую цель, требуется повто-
рить без изменений в нескольких местах программы. Для избавления от столь
нерациональной траты времени была предложена концепция подпрограммы.
Подпрограмма
— именованная, логически законченная группа операторов
языка, которую можно вызвать для выполнения любое количество раз из раз-
личных мест программы. В языке C++ подпрограммы реализованы в виде функ-
ций
[4].
4.1
Общие сведения о функциях. Локальные и глобальные
переменные
Функция
— это поименованный набор описаний и операторов, выполняющих
определённую задачу. Функция может принимать параметры и возвращать зна-
чение. Информация, передаваемая в функцию для обработки, называется пара-
метром
, а результат вычисления функции её значением. Обращение к функ-
ции называют вызовом. Как известно (п. 2.8), любая программа на C++ состоит
из одной или нескольких функций. При запуске программы первой выполня-
ется функция main. Если среди операторов функции main встречается вызов
функции, то управление передаётся операторам функции. Когда все операторы
функции будут выполнены, управление возвращается оператору, следующему за
вызовом функции.
Перед вызовом функция должна быть обязательно описана. Описание функ-
ции
состоит из заголовка и тела функции:
тип имя_функции(список_переменных)
{
тело_функции
}
4.1. Общие сведения о функциях
101
Заголовок функции
содержит:
• тип возвращаемого функцией значения, он может быть любым; если функ-
ция не возвращает значения, указывают тип void;
• имя_функции;
• список_переменных — перечень передаваемых в функцию величин (аргу-
ментов
), которые отделяются друг от друга запятыми; для каждой пере-
менной из списка указывается тип и имя; если функция не имеет аргумен-
тов, то в скобках указывают либо тип void, либо ничего.
Тело функции
представляет собой последовательность описаний и операторов,
заключённых в фигурные скобки.
В общем виде структура программы на C++ может иметь вид:
директивы компилятора
тип имя_1(список_переменных)
{
тело_функции_1;
}
тип имя_2(список_переменных)
{
тело_функции_2;
}
...
тип имя_n(список_переменных)
{
тело_функции_n;
}
i n t main ( список_переменных )
{
//Тело функции может содержать операторы вызова функций имя_1, имя_2, ..., имя_n
тело_основной_функции;
}
Однако допустима и другая форма записи программного кода:
директивы компилятора
тип имя_1(список_переменных);
тип имя_2(список_переменных);
...
тип имя_n(список_переменных);
i n t main ( список_переменных )
{
//Тело функции может содержать операторы вызова функций имя_1, имя_2, ..., имя_n
тело_основной_функции;
}
тип имя_1(список_переменных)
{
тело_функции_1;
}
тип имя_2(список_переменных)
{
тело_функции_2;
}
...
© 2015 Алексеев Е. Р., Злобин Г. Г., Костюк Д. А., Чеснокова О. В., Чмыхало А. С.
102
Do'stlaringiz bilan baham: |