Информатика. Общая информатика. Основы языка C++. Мамонова Т.Е. - 162 стр.

UptoLike

Составители: 

bool triangle(double , double , double );
Это прототипы функций, описанных выше.
При наличии прототипов вызываемые функции не обязаны разме-
щаться в одном файле с вызывающей функцией, а могут оформляться в
виде отдельных модулей и храниться в откомпилированном виде в биб-
лиотеке объектных модулей. Это относится и к функциям из стандарт-
ных модулей. В этом случае определения библиотечных функций уже
оттранслированные и оформленные в виде объектных модулей, нахо-
дятся в библиотеке компилятора, а описания функций необходимо
включать в программу дополнительно. Это делают с помощью препро-
цессорных команд include< имя файла>.
Имя_файла – определяет заголовочный файл, содержащий прототи-
пы группы стандартных для данного компилятора функций. Например,
почти во всех программах мы использовали команду #include
<iostream.h> для описания объектов потокового ввода-вывода и соот-
ветствующие им операции.
При разработке своих программ, состоящих из большого количе-
ства функций, и, размещенных в разных модулях, прототипы функций
и описания внешних объектов (констант, переменных, массивов) поме-
щают в отдельный файл, который включают в начало каждого из моду-
лей программы с помощью директивы include”имя_файла”.
4.8.3. Параметры функции
Основным способом обмена информацией между вызываемой
и вызывающей функциями является механизм параметров. Существует
два способа передачи параметров в функцию: по адресу и по значению.
При передаче по значению выполняются следующие действия:
1) вычисляются значения выражений, стоящие на месте фактиче-
ских параметров;
2) в стеке выделяется память под формальные параметры функции;
3) каждому фактическому параметру присваивается значение фор-
мального параметра, при этом проверяются соответствия типов и при
необходимости выполняются их преобразования.
Пример 70
double square(double a, double b, double c)
{
//функция возвращает площадь треугольника, за-
данного длинами сторон а,b,c
double s, p=(a+b+c)/2;
162