Функция может возвращать в основную программу

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

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

Функция declaration сообщает компилятор об имени функции во, типе возвращаемого значения и параметрах. Функция definition обеспечивает реальное тело функции.

Стандартная библиотека C ++ предоставляет множество встроенных функций, которые может вызывать ваша программа. Например, функция strcat () для объединения двух строк, функция memcpy() для копирования одной ячейки памяти в другое место и множество других функций.

Функция известна с различными именами, такими как метод или подпрограмма или процедура и т. д.

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

Общая форма определения функции C ++ заключается в следующем:

«Функция возвращает» Что это значит? JavaScript


return_type function_name( parameter list )

Определение функции C ++ состоит из заголовка функции и тела функции. Вот все части функции —

  • Return Type. Функция может возвращать значение. Тип return_type — это тип данных значения, возвращаемого функцией. Некоторые функции выполняют требуемые операции без возврата значения. В этом случае return_type является ключевым словом void .
  • Function Name — это фактическое имя функции. Имя функции и список параметров вместе составляют подпись функции.
  • Parameters . Параметр подобен заполнителю. Когда функция вызывается, вы передаете значение параметру. Это значение называется фактическим параметром или аргументом. Список параметров относится к типу, порядку и количеству параметров функции. Параметры являются необязательными; то есть функция не может содержать никаких параметров.
  • Function Body. Тело функции содержит набор операторов, которые определяют, что делает функция.

Пример

Ниже приведен исходный код для функции max () . Эта функция принимает два параметра num1 и num2 и возвращает наибольшую из них:

int max(int num1, int num2) < int result; if (num1 >num2) result = num1; else result = num2; return result; >

Объявление функций

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

Объявление функции имеет следующие части —

Читайте также:
Как ограничить установку программ на компьютер

return_type function_name( parameter list );

Для указанной выше функции max () следующим является объявление функции —

int max(int num1, int num2);

Имена параметров не важны в объявлении функции только для их типа, поэтому следующее также является действительным объявлением —

int max(int, int);

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

#14.3 Функции в Паскаль: что значит «возвращение значения». Ещё раз

Вызов функции

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

Когда программа вызывает функцию, управление программой передается вызываемой функции. Вызываемая функция выполняет определенную задачу, и когда выполняется оператор return или когда достигается завершающая ее конечная скобка, она возвращает управление программой обратно в основную программу.

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

#include using namespace std; // function declaration int max(int num1, int num2); int main () < // local variable declaration: int a = 100; int b = 200; int ret; // calling a function to get max value. ret = max(a, b); cout // function returning the max between two numbers int max(int num1, int num2) < // local variable declaration int result; if (num1 >num2) result = num1; else result = num2; return result; >

Аргументы функции

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

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

При вызове функции существует два способа передачи аргументов функции —

Call by Value (Вызов по значению) Этот метод копирует фактическое значение аргумента в формальный параметр функции. В этом случае изменения, внесенные в параметр внутри функции, не влияют на аргумент.
Call by Pointer (Вызов по указателю) Этот метод копирует адрес аргумента в формальный параметр. Внутри функции адрес используется для доступа к фактическому аргументу, используемому в вызове. Это означает, что изменения, внесенные в параметр, влияют на аргумент.
Call by Reference (Вызов по ссылке) Этот метод копирует ссылку аргумента в формальный параметр. Внутри функции ссылка используется для доступа к фактическому аргументу, используемому в вызове. Это означает, что изменения, внесенные в параметр, влияют на аргумент.
Читайте также:
Программа для того чтобы замедлить видео

По умолчанию C ++ использует вызов по значению для передачи аргументов. В общем, это означает, что код внутри функции не может изменять аргументы, используемые для вызова функции и вышеупомянутого примера, при вызове функции max (), используемой тем же методом.

Значения по умолчанию для параметров

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

Это делается с помощью оператора присваивания и назначения значений для аргументов в определении функции. Если значение для этого параметра не передается при вызове функции, используется заданное по умолчанию значение, но если задано значение, это значение по умолчанию игнорируется и вместо этого используется переданное значение. Рассмотрим следующий пример:

#include using namespace std; int sum(int a, int b = 20) < int result; result = a + b; return (result); >int main () < // local variable declaration: int a = 100; int b = 200; int result; // calling a function to add the values. result = sum(a, b); cout

Когда приведенный выше код компилируется и выполняется, он производит следующий результат:

Total value is :300 Total value is :120

Источник: unetway.com

Функции

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

В данный момент вы не можете посмотреть или раздать видеоурок ученикам

Чтобы получить доступ к этому и другим видеоурокам комплекта, вам нужно добавить его в личный кабинет.

Получите невероятные возможности

1. Откройте доступ ко всем видеоурокам комплекта.

2. Раздавайте видеоуроки в личные кабинеты ученикам.

3. Смотрите статистику просмотра видеоуроков учениками.
Получить доступ

Конспект урока «Функции»

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

7.2. Подпрограммы. Процедуры и функции

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

Читайте также:
Эта программа содержала вирус и была удалена

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

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

Описание состоит из заголовка и тела процедуры (функции), которое обычно следует за за­головком.

Список формальных параметров записывается в скобках и содержит пере­чень параметров с указанием их типов. Перед выходными параметрами, которые воз­вращают результат в основную программу, указывается ключевое слово VAR, например:

PROCEDURE SUMMA(A1,A2:REAL; B1,B2:INTEGER; VAR S1,S2:REAL); Допускаются также процедуры без параметров:

Они предполагают использование в подпрограмме только глобальных пере­менных, определенных в разделе описаний основной программы.

За заголовком процедуры следует раздел описаний подпрограммы (ме­ток, констант, типов, переменных, а также описаний вложенных процедур и функций) и блок операторов.

Структура описания заголовка подпрограммы-функции имеет вид:

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

Пример

FUNCTION STEP(x, y : REAL) : REAL;

VAR a, b : real;

После описания блока процедуры или функции следует оператор END, за которым ставится точка с запятой.

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

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

Количество, тип и порядок перечисления фактических параметров должен обязательно соответствовать количеству, типу и порядку перечис­ления формальных параметров в описании подпрограммы.

7.3. Структура подпрограммы-функции

Описание блока подпрограммы-функции в общем виде имеет следующую структуру:

Функция передает в вызывающую программу единственное значение, которое хранится под ее именем. В качестве переменных могут использоваться параметры-переменные и параметры-значения. Тип> функции должен соответствовать значению, которое вычисляется в данной подпрограмме (типу результата). В вызывающую подпрограмму передается значение функ­ции данного типа.

Вызов функции в программе производится не обособленно, как в про­цедуре, а в выражении указывается имя функции со списком параметров.

Источник: studfile.net

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru