Объявление функции (прототип). Определение функции.




Пермский национальный исследовательский

Политехнический университет

Кафедра «Информационные технологии и автоматизированные системы»

Лабораторная работа № 7

"Функции"

 

 

Выполнил: студент группы РИС-16-1б

Патрушев Антон Дмитриевич

Проверил: доцент кафедры ИТАС

Полякова О.А.

 

Пермь, 2017


 

Содержание отчета

1. Введение

2. Объявление функции (прототип). Определение функции

3. Область действия переменных: глобальные, локальные и статические переменные

4. Параметры функции

5. Передача параметров в функцию: одномерные массивы, строки

6. Функции с переменным количеством параметров

7. Перегрузка функций


Функции.

Введение.

С увеличением объема программы становится практически невозможно удерживать в памяти все её детали. Чтобы уменьшить сложность программы, её разбивают на части. В C++ программа может быть разделена на более простые задачи с помощью функций.

Функция – это именованная последовательность описаний и операторов, выполняющая какое-либо законченное действие. Функция может принимать параметры, возвращать какое-либо значение или не возвращать его.

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

Любая программа на C++ состоит из функций, одна из которых должна иметь имя main (функция, вызываемая операционной системой для запуска программы). Функция начинает выполняться в момент вызова. Чтобы к функции можно было обратиться, она должна быть объявлена и определена.

Объявление функции (прототип). Определение функции.

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

 

тип имя_функции(тип_параметра, тип_параметра, …);

Определение функции содержит, кроме объявления, тело функции, которое представляет собой последовательность описаний и операторов.

 

тип имя_функции(параметр, параметр, …){

тело_функции;

}

 

Объявление функции начинается с определения типа возвращаемого значения. Тип возвращаемого значения может быть любым. Единственное, чем не может быть возвращаемое значение, — это массивом. В то время как в языке C можно было опустить возвращаемое значение, и тип функции автоматически определялся в качестве int, в стандарте ANSI C++ это не допускается – тип возвращаемого значения должен быть указан явно. Если функция не должна возвращать значение, ее тип определяется ключевым словом void.

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

За именем функции следуют скобки, в которых могут содержаться параметры функции. Функция может как вообще не иметь параметров, так и иметь любое их количество, при этом они разделяются запятой. Определение параметра соответствует определению переменной. Если параметры отсутствуют, скобки остаются пустыми или содержат ключевое слово void. Что такое параметры и как они должны быть построены, будет рассмотрено позже.

В определении функции в фигурных скобках следует тело функции — блок команд, который содержит выполняемый функцией код и завершается командой return (может быть опущена, если тип функции определяется как void и функция, так или иначе, завершит свою работу). Пока функция имеет возвращаемое значение, после return должна быть указана переменная (return 0; return a;).

Функция вызывается посредством указания ее имени. После него располагается пара скобок с параметрами или без них, в зависимости от того, присутствуют ли они в определении и объявлении функции. Параметры вызова функции должны соответствовать определенным требованиям, описанным ниже. Если функция возвращает некоторое значение, ее вызов можно использовать в выражении. Например, вызов функции может располагаться справа от оператора присваивания.

 

a = func(b); //Только если функция возвращает значение!

 

 

//Вызов функции суммы через оператор консольного вывода

int sum(int c, int d){

return c + d;

}

int main(){

int a, b;

cin >> a >> b;

cout << sum(a, b);

}

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-06-30 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: