Функции C ++ с примерами

Что такое функция в C ++?

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

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

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

В этом руководстве по C ++ вы узнаете:

Зачем использовать функции?

Использование функций дает множество преимуществ. Это включает:

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

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

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

Пример 1:

 #include #include using namespace std; int main() { double num, squareRoot; cout <> num; squareRoot = sqrt(num); cout << 'The square root of ' << num << ' is: ' << squareRoot; return 0; } 

Выход:

Вот скриншот кода:

Пояснение к коду:

  1. Включите файл заголовка iostream в нашу программу, чтобы использовать его функции.
  2. Включите библиотеку cmath, чтобы использовать ее функции. Мы хотим использовать определенную в нем функцию sqrt ().
  3. Включите пространство имен std в наш код, чтобы использовать его классы без его вызова.
  4. Вызовите функцию main (). Логика программы должна быть добавлена ​​в тело этой функции.
  5. Объявите две переменные типа double, num и squareRoot.
  6. Напечатайте текст на консоли. Текст просит пользователя ввести число.
  7. Прочтите ввод пользователя с клавиатуры. Вход станет значением переменной num.
  8. Вызовите библиотечную функцию sqrt (), которая вычисляет квадратный корень числа. Мы передали в функцию параметр num, то есть она вычислит квадратный корень из числа. Эта функция определена в библиотеке cmath.
  9. Выведите на консоль число, введенное пользователем, его квадратный корень и другой текст.
  10. Программа должна вернуть значение после успешного завершения.
  11. Конец тела функции main ().

Пользовательские функции

C ++ позволяет программистам определять свои собственные функции. Цель функции - сгруппировать связанный код. Затем коду присваивается уникальный идентификатор - имя функции.

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

Пример 2:

 #include using namespace std; void sayHello() { cout << 'Hello!'; } int main() { sayHello(); return 0; } 

Выход:

Вот скриншот кода:

Пояснение к коду:

  1. Включите файл заголовка iostream в нашу программу, чтобы использовать его функции.
  2. Включите пространство имен std в наш код, чтобы использовать его классы без его вызова.
  3. Создайте пользовательскую функцию с именем sayHello ().
  4. Выведите текст на консоль при вызове функции sayHello ().
  5. Конец тела функции sayHello ().
  6. Вызовите функцию main (). Логика программы должна быть добавлена ​​в тело этой функции.
  7. Вызовите / вызовите функцию с именем sayHello ().
  8. Программа должна вернуть значение после успешного завершения.
  9. Конец тела функции main ().

Объявление функции / прототип

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

В C ++ объявление / прототип функции объявляет функцию без тела. Это дает компилятору подробную информацию об определяемой пользователем функции.

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

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

Цель объявления функции - сообщить компилятору C ++ имя функции, тип возвращаемого значения и параметры. Определение функции сообщает компилятору C ++ о теле функции.

Синтаксис:

 return_datatype function_name( parameters) { function body } 

Из вышесказанного определение функции имеет заголовок и тело функции. Вот объяснение параметров:

  • return_datatype - Некоторые функции возвращают значение. Этот параметр обозначает тип данных возвращаемого значения. Некоторые функции не возвращают значение. В этом случае значение этого параметра становится недействительным.
  • function_name - это имя функции. Имя функции и параметры образуют сигнатуру функции.
  • Параметры - это тип, порядок и количество параметров функции. У некоторых функций нет параметров.
  • тело функции - это утверждения, определяющие, что будет делать функция.

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

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

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

Передача аргументов

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

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

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

Пример 3: Как написать и вызвать функцию

 #include using namespace std; int addFunc(int, int); int main() { int x, y, sum; cout <> x >> y; sum = addFunc(x, y); cout <<'The sum of '<

Выход:

Вот скриншот кода:

Пояснение к коду:

  1. Включите файл заголовка iostream в нашу программу, чтобы использовать его функции.
  2. Включите пространство имен std в наш код, чтобы использовать его классы без его вызова.
  3. Объявите функцию с именем addFunc (), которая принимает два целочисленных параметра. Это создает прототип функции.
  4. Вызовите функцию main (). Логика программы должна быть добавлена ​​в тело этой функции.
  5. Объявите три целочисленные переменные x, y и sum.
  6. Напечатайте текст на консоли. Текст просит пользователя ввести два числа.
  7. Прочтите ввод пользователя с клавиатуры. Пользователь должен ввести два числа для переменных x и y, разделенных пробелом.
  8. Вызвать функцию addFunc () и передать ей параметры x и y. Функция будет работать с этими параметрами и присвоить выход переменной сумме.
  9. Напечатайте значения переменных x, y и sum на консоли рядом с другим текстом.
  10. Функция должна возвращать значение после успешного завершения.
  11. Конец тела функции main ().
  12. Определение функции. Мы определяем функцию addFunc (). Мы укажем, что функция будет делать в своем теле, {}.
  13. Объявление целочисленной переменной с именем addFunc.
  14. Добавление значений параметров num1 и num2 и присвоение результата переменной addFunc.
  15. Функция addFunc () должна возвращать значение переменной addFunc.
  16. Конец тела функции, то есть определение функции.

Резюме:

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