Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Типизированные и нетипизированные функции. Оператор return



Типизированной называется функция, которая по окончании своей работы возвращает значение, а нетипизированной (или void -функцией) – функция, которая ничего не возвращает.

Разница в вызове нетипизированной (void) и типизированной функции:

1. Вызов нетипизированной (void) функции выглядит как оператор:

void Func (int A); // объявление функции void main(){ Func (10); // вызов – отдельный оператор программы}

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

int Func (int A); // объявление функции void main(){ int A, B, C; C = Func (10); // вызов – часть оператора присваивания C = A + B * Func (10); // вызов – часть арифметического выражения if (Func (10) < 100)... // вызов – часть оператора ветвления while (Func (10) > 0)... // вызов – часть оператора цикла}

Возврат из нетипизированной функции в вызвавшую ее функцию происходит при выполнении последнего оператора в теле функции или реализуется оператором:

return;

Возврат из типизированной функции реализуется оператором:

return выражение;

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

Примеры:

int f1(){... return 1; } //правильно void f2(){...return 1; } //неправильно, f2 не должна возвращать значение double f3(){...return 1; } //правильно, 1 преобразуется к типу double




Дата публикования: 2015-07-22; Прочитано: 302 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...