Пример функций C ++ | Что такое функция в C ++

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

Что такое функция в языке программирования?

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

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

Зачем нам нужны функции?

Предположим, в программе есть задача, которая выполняется в нескольких местах. Итак, с разными ценностями мы выполняем одну и ту же задачу. Это делает наш код длинным и наивным.

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

Пример функций C ++

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

  1. Встроенные -в функции
  2. Пользовательская функция

Встроенная функция

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

strlen (string_name) : возвращает целое число с длиной строки.

Также есть много встроенных функций, таких как, max (), min (), pow (), sqrt () и т. д.

Функция библиотеки

См. Следующий пример функции библиотеки.

 #include  #include  using namespace std; int main (  ) {двойное число1, число2;  int op;  cout > number1;  cout > number2;  op = pow (число1; число2);  cout  

См. вывод ниже.

В приведенном выше примере библиотечная функция pow () вызывается для вычисления мощности числа.

Обратите внимание на код #include в указанной выше программе. Здесь cmath - это файл заголовка. Определение функции pow () (тело этой функции) присутствует в файле заголовка cmath..

Вы можете использовать все функции, определенные в библиотеке cmath , если вы включаете содержимое файла cmath в эту программу с помощью #include code

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

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

Пользовательская функция - это функция, которая определяется программой в соответствии с его потребностями.

Правило, параметр, все написано им.

Формат функции в C ++:

  Имя_функции (Параметр 1, Параметр 2,…, Параметр N) {//Тело функции//Работа с параметрами} 

может быть int, float, double , long, long, long int, long double, void, string и различные возможные типы данных.

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

Параметры могут иметь вид int x , float y, string z и т. д.

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

 #include  using namespace std;  float areaOfRectangle (длина с плавающей запятой, ширина с плавающей запятой) {//тело функции float CalculatedArea = length * width;  return CalculatedArea;  } int main () {//Пример программы для отображения функции на C ++//Предположим, нам нужно вычислить площадь прямоугольника в нескольких местах, поэтому вместо этого мы создаем функцию.  длина поплавка, ширина;  cout > длина >> ширина;  float answer = areaOfRectangle (длина, ширина); //Передаем параметры//сохраняем результат в ответ cout  

Вызов функции - не такая уж большая проблема. Нужно передать параметры и вызвать функцию по Function_name. Это можно увидеть в приведенном выше коде, где функция areaOfRectangle вызывается с параметрами length и width.

Как объявить функцию в C ++

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

В языке C ++ прототип функции - это объявление функции без ее тела для предоставить компилятору информацию об определяемой пользователем функции. Прототип функции в приведенном выше примере следующий.

 int add (int, int); 

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

 int add (int a, int b); 

Как вызвать функцию в C ++

Если мы хотим выполнить коды тела функции, необходимо вызвать (вызвать) пользовательскую функцию.

В приведенной выше программе add (a, б) внутри функции main () вызывает пользовательскую функцию.

Функция возвращает целое число, которое хранится в переменной .

Как передавать аргументы функций в C ++

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

В приведенном ниже примере две переменные, x и y, передаются в функцию во время вызова функции. Эти аргументы известны как фактические аргументы.

Значение a и b инициализируются соответственно. Эти аргументы a и b называются формальными аргументами.

Внутри основной функции мы вызываем функцию multiply () , в которой передаем фактические параметры x и y .

Итак, в приведенном ниже коде int a, int b - формальные параметры, а int x, int y - фактические параметры.

См. следующий код.

 #include  #include  с использованием пространства имен std; int multiply (int a, int b) {int c;  с = а * б;  return c;} int main () {int x = 19, y = 21, результат;  результат = умножить (х, у);  cout  

Говоря о параметрах, параметры можно передавать двумя способами, а именно:

  1. Вызов по Значение
  2. Вызов по ссылке

Использование вызова по значению

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

 #include  using namespace std;  int dostuff (int x, int y) {//Тело функции x = x + y; //сделанное здесь изменение не будет отражено в main.  вернуть x;  } int main () {//Пример программы для отображения вызова по значению.  int x, y;  cin >> x >> y;  int answer = dostuff (х, у); //Передаем параметры//Значение x здесь не изменится.  cout  

В приведенном выше коде x и y переданы по значению в dostuff . В функции dostuff x был изменен на x + y , но это изменение не отражено в основной функции.

Использование вызова по ссылке

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

 #include  using namespace std;  int dostuff (int & x, int y) {//Тело функции//Ищите '&' перед x в int & x выше.  х = х + у; //сделанные здесь изменения будут отражены в main.  вернуть x;  } int main () {//Пример программы для отображения вызова по ссылке.  int x, y;  cin >> x >> y;  int answer = dostuff (х, у); //Передача параметров//Здесь значение x будет изменено на x + y.  cout  

Приведенный выше код сообщает о вызове путем передачи параметров ссылочного типа. Параметр x был передан как ссылочная переменная. Внутри аргумента функции dostuff int & x используется вместо int x . Изменения, внесенные в x, т.е. x = x + y отражается в основной функции.

Можем ли мы передать меньше параметров, чем указано в определении функции?

Да. Это можно сделать с помощью параметров по умолчанию. Параметры по умолчанию должны присутствовать только в конце аргументов.

В следующем примере поясняется концепция.

 #include  using namespace std;  int multiply (int x, int y, int z = 1) {//Тело функции//Если есть только два входа, тогда z будет 1. return x * y * z;  } int main () {//Пример программы для отображения параметров по умолчанию.  int x, y, z;  х = 4;  у = 10;  z = 3; //Умножение трех чисел cout  

Здесь функция умножения может использоваться как для 3 чисел, так и для 2 чисел. Для z по умолчанию установлено значение 1. Обратите внимание, что оно помещено в конец аргументов. Если переданы только два аргумента, будет установлено значение z = 1.

Наконец, пример функций C ++ завершен.

Оцените статью
nanomode.ru
Добавить комментарий