Int MyFunction(int some Value, float SameFloat);

Вызов функции имеет вид:

Rezult=MyFunction(12.4,4.7);

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

Существуют три способы объявления функции:

1. можно записать протопип в файл, а потом подключить его в основную программу при помощи #include.

2. поместить прототип в файл, где используется эта функция.

3. определить функцию перед вызовом, в этом случае описание и есть объявление ( это не очень хороший стиль).

Прототип функции имеет вид:

В прототипе используется список формальных параметров.

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

 

Пример: заголовок функции складывающей два числа.

Параметр — это объвление типа данных значения, передаваемого в функцию.реальное значение, передаваемон при вызове функции называется аргументом функции.

Тело функции начинается с фигурной скобки и содержит раяд строк, за которыми следует закрывающая фигурная скобка. ( если тело функции содержит какие-то другие фигурные скобки, то они должны быть парными). Функция может возвращать значение при помощи оператора возврата.

Пример:


#include <iostream.h>

Int Add(int x, int y);

Int Add(int x,int y)

{

cout << “В Add складываются “ <<x<< “и”<<y<<”\n”;

return (x+y);

}

Int main()

{ int a,b,c;

cout <<”Введите два числа:\n”;

cin >>a;

cin >> b;

c=Add(a,b);

cout <<”a+b=”<<c<<”\n”;

Return 0;

}


Макрофункции

Иногда бывает полезно создать макроопределение с аргументами - макрофункцию. Макрофункция применяется там, где требуется произвести не очень сложные вычисления, и хороши тем, что они выполняются для любых типов данных (в отличие от обычных функций).

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

Пример 3.

/* текст программы до обработки препроцессором */

#include<stdio.h>

#define SQUARE(x) x*x

Void main(void)

{

int y=5,rez;

printf("квадрат y равен %d\n",SQUARE(y)); printf("квадрат y+2 равен %d\n",SQUARE(y+2)); printf("частное равно %f\n",100./SQUARE(y));

}








Дата добавления: 2015-12-26; просмотров: 618;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.006 сек.