Читайте также:
|
|
Для обращения к функции достаточно написать ее имя и в скобках записать значения либо перечень фактических аргументов. Фактические аргументы должны быть записаны в той же последовательности, что и формальные и иметь соответствующий тип (кроме аргументов по умолчанию и перегруженных функций).
Если формальными аргументами функции являются параметры значения и в ней не используются глобальные переменные, то функция может передать в вызывающую программу лишь одно значение, которое записывается в операторе return. Это значение передается в точку вызова функции. Фрагмент программы, подтверждающий вышеизложенное может иметь вид:
Double sgr (double);
Main()
{
cout << "Квадрат числа=" << sgr (10) << endl;
}
Double sqr (double p)
// Возврат по значению
{
return p*p;
}
В результате будет выведено:
Квадрат числа = 100.
Используя оператор return можно также организовать досрочный выход из функции.
Если из функции надо передать не одно, а несколько значений, то можно либо использовать глобальные переменные, либо массивы.
Имя функции ¾ это константа - указатель на функцию, который указывает на адрес точки входа (адрес первой машинной команды) функции. Следует отметить, что возможно также описание и указателей переменных на функции. Для этого используется операция разыменования "*", функции описанные таким образом должны возвращать указатель на тип, т.е. его адрес.
В С++ определено несколько способов передачи и возвращения результата вычислений, наиболее широко используемыми являются рассмотренные ранее:
¾ вызов функции с передачей параметров с помощью формальных аргументов - значений;
¾ вызов функции с передачей адресов с помощью параметров - указателей;
¾ вызов функций с использованием ссылок, когда доступ к передаваемым параметрам обеспечивается с помощью альтернативного имени (синонима);
¾ вызов функций с передачей данных посредством глобальных переменных, например:
#include < iostream.h >
Int a, b, c;
Sum ()
Main ()
{
cin >> a >> b;
Sum ();
cout << c << endl;
}
Sum()
{ c = a + b; }
¾ вызов функций с использованием параметров, заданных по умолча-нию, при этом можно использовать либо все аргументы, либо их часть.
При вызове функции, у которой аргументы заданы "по умолчанию", соблюдается такое правило: если какой - либо аргумент используется по умолчанию, то и все последующие аргументы должны быть использованы со значениями по умолчанию.
Пример Составить функцию, которая в качестве аргумента получает натуральное число, проверяет его на простоту. Составить главную программу, вызывающую эту функцию.
#include<iostream.h>
#include<conio.h>
#include<math.h>
bool k;
double ost;
bool f(int n){
for(int i=2;i<n;i++)
{
ost=fmod(n,i);
if(ost==0)
return false;
}
return true;
}
void main(void){
int n;
cout<<"vvod n: ";
cin>>n;
if (f(n)==false)
cout<<"not simple";
else cout<<"simple";
getch();
}
//---------------------------------------------------------------------------
Дата добавления: 2014-12-18; просмотров: 26 | Поможем написать вашу работу | Нарушение авторских прав |