Общий вид функции

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

Тип_возвращаемого_значения имя_функции(список_параметров)

{

Тело функции

}

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

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

func(int i, int k, int j);

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

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

/* функция возвращает 1, если символ с является частью строки s; в противном случае она возвращает 0*/

int_is_in(char *s, char c)

{

while (*s)

if (*s==c) return 1;

else s++;

return 0;

}

Приведенная функция имеет два параметра: s и c. Она возвращает 1, если символ входит в строку s и 0 в противном случае.

Виды функций

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

Ко второй категории функций относятся функции, выполняющие обработку информации. Информация, возвращаемая ими означает, успешно выполнена функция или нет. В качестве примера можно привести функцию fclose(), возвращающую 0 при успешном закрытии файла и eof в противном случае.

Функции третьего типа не имеют явно возвращаемого значения. По существу данные функции являются процедурами т.е. не вычисляют каких-либо значений. К этой категории относится функция exit(), прекращающая выполнение программы. Все функции, не возвращающие каких-либо значений следует объявлять с помощью спецификатора void. Подобные функции нельзя использовать в выражениях.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: