{lang: ‘ru’}

Функции с++В этой статье Вы узнаете, что такое функции, прототипы функций; научитесь создавать и использовать свои функции.

Понятие функции

Реальные программы состоят из тысяч, десятков тысяч и, даже миллионов строк кода. Чтобы легче было управлять этим кодом используют функции. Функции это модули в С/С++. Обычно программы пишутся объединяя множество таких модулей (функций), которые могут быть описаны в разных заголовочных файлах. Так, например, в лабораторной работе № 2 вы уже использовали математические функции. Для их использования нужно было подключить заголовочный файл math.h, так как все математические функции описаны в этом файле. Математические функции были разработаны программистами Microsoft, кроме математических функций также есть функции для работы со строками, с вводом и выводом и многим другим.

Для более быстрого понимания функций

Однако можно использовать и пользовательские функции, то есть можно создавать свои собственные. Для создания функций сначала нужно объявить прототип функции, а затем написать её реализацию, как показано в следующем листинге.

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

Реализация функции описана после главной функции программы. При реализации нужно указать тип возвращаемого значения функции, а также параметры функции и их типы данных.

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

#include <iostream>
#include <math.h>
using namespace std;

int my_pow(int, int); //прототип функции my_pow

void main()
{
	float x;
	float y;
	float Res = 0;
	float My_Res = 0;
	cout << "Enter x = ";
	cin >> x;
	cout << "Enter y = ";
	cin >> y;
	Res = pow(x, y);
	cout << "Res = " << Res << endl;
	My_Res = my_pow(x, y); //Вызов функции my_pow
	cout << "My_Res = " << My_Res << endl;
}				

int my_pow(float x, float y)//Реализация функции my_pow
{
	int r = 1;				   //Тело функции my_pow
	for(int i = 0; i < y; i++)
		r = r * x;
	return r;
}



Получайте новые статьи блога прямо себе на почту