Учимся программировать на языке C++


ПРОГРАММА МОЖЕТ ПЕРЕДАВАТЬ ИНФОРМАЦИЮ В ФУНКЦИИ


Для увеличения потенциальных возможностей ваших функций C++ позволяет программам передавать информацию (параметры) в функции. Если функция использует параметры, вы должны сообщить C++ тип каждого параметра, например int, float, char и т.д. Следующая функция show_number использует параметр типа int.

void show_number (int value)

{

cout "Значение параметра равно " value endl;

}

Если ваша программа вызывает функцию show_number, она должна передать ей значение, как показано ниже:

show_number (/u>); //---------------- Значение, передаваемое в функцию

C++ будет подставлять переданное число вместо каждого имени параметра value внутри функции:

show_number (1001)

void show_number (int value)

{

cout "Значение параметра равно " value endl;

}



void show_number (1001)

{

cout "Значение параметра равно " 1001 endl;

}

Как видите, поскольку C++ замещает значение параметра, функция show_number выводит число 1001, переданное ей главной программой.

Следующая программа USEPARAM.CPP использует функцию show_number несколько раз, каждый раз передавая разные числа:

#include iostream.h

void show_number (int value)

{

cout "Значение параметра равно " value endl;

}

void main (void)

{

show_number (1);

show_number (1001);

show_number (-532);

}

Если вы откомпилируете и запустите эту программу, на вашем экране будет отображено следующее:

С: \USEPARAM ENTER

Значение параметра равно 1

Значение параметра равно 1001

Значение параметра равно -532

Как видите, каждый раз, когда программа вызывает функцию, C++ присваивает передаваемое число переменной value. Найдите время для эксперимента с этой программой, изменяя значения, которые main передает в функцию, и обращая внимание на результат.


Каждый параметр функции имеет определенный тип. В случае функции show_number параметр value должен быть типа int. Если вы попытаетесь передать в функцию значение другого типа, например с плавающей точкой, компилятор будет сообщать об ошибке. В большинстве случаев ваши программы будут передавать несколько значений в функцию. Для каждого передаваемого параметра функция должна указать имя и тип. Например, следующая программа BIGSMALL.CPP использует функцию show_big_and_little для вывода самого большого и самого маленького из трех полученных целочисленных значений:

#include iostream.h

void show_big_and_little (int a, int b, int c)

{

int small = a;

int big = a;

if (b big)

big = b;

if (b small)

small = b;

if (c big)

big = c;

if (c small)

small = c;

cout "Самое большое значение равно " big endl;

cout "Самое маленькое значение равно " small endl;

}

void main (void)

{

show_big_and_little (1, 2, 3);

show_big_and_little (500, 0, -500);

show_big_and_little (1001, 1001, 1001);

}

Если вы откомпилируете и запустите эту программу, на вашем экране появится следующий вывод:

С: \ BIGSMALL ENTER

Самое большое значение равно 3

Самое маленькое значение равно 1

Самое большое значение равно 500

Самое маленькое значение равно -500

Самое большое значение равно 1001

Самое маленькое значение равно 1001

Наконец, следующая программа SHOW_EMP.CPP использует функцию show_employee для вывода возраста (тип int) и оклада (тип float) служащего:

#Include iostream.h

void show_employee (int age, float salary)

{

cout "Возраст служащего " age " года (лет)" endl;

cout "Служащий получает $" salary endl;

}

void main (void)

{

show_employee (32, 25000.00);

}

Как видите, функция show_employee определяет параметры типа int и float

Передача параметров в функцию

Если ваша функция использует параметры, она должна указать уникальное имя и тип для каждого параметра. Когда программа вызывает функцию, C++ присваивает значения параметров именам параметров функции слева направо. Каждый параметр функции имеет определенный тип, например int, float или char. Значения, которые ваша программа передает в функцию, используя параметры, должны соответствовать типу параметров.


Содержание раздела