Имеется два способа окончания работы функции и возврата управления в точку вызова. Первый способ, применимый к функциям типа void, предполагает выполнение последнего оператора функции, после чего работа функции заканчивается.
Второй, более универсальный способ, состоит в использовании оператора return.
Оператор return имеет два назначения: во-первых, немедленный выход из функции, во-вторых, возврат значения в точку вызова. Функция может иметь несколько операторов return, то есть точек выхода из функции может быть несколько.
В функциях, возвращающих значение, оператор return связан со значением выражения, например:
return 0; // возвращается значение константы
В функциях, не возвращающих значения (имеющих тип void), может использоваться оператор return, не связанный с каким-либо выражением:
return; // осуществляется выход из функции