Описание заголовка называют
Если функция определена до тела программы, то ее объявление может отсутствовать.
Функция объявляется следующим образом: тип имя функции (тип и имя параметра, тип и имя 2ого параметра).
Тип функции определяет тип значения, которое возвращает функция. Пример объявления:
Int somefunc(int a, float b);
Определение функции.
(тип и имя параметра, тип и имя 2ого параметра){
Тело функции
}
Передача значений из вызванной функции происходит с помощью оператора возврата (return)
Пример:
Int f(int a, int b)
{
If (a>b){
Pritnf(“max=%d”, a);
Return a;
}
Pritnf(“max=%d”, b);
Return b;
}
Способ вызова этой функции может быть такой: c=f(5,15);
C=f(d,g)
F(d,g)
В языке C++ можно задавать значение аргументов функции, которые будут использоваться по умолчанию, т.е. если программист не введет свое значение, например,
Void some f(int a=1, int b=2, int c=3){
Printf(“a=%d, b=%d, c=%d”, a,b,c);
}
Int main(void){
Some f();
Some f(10);
Sone f(10,20);
Some f(10,20,30);
Return 0;
}
Выведет так:
A=1 b=2 c=3
A=10 b=2 c=3
A=10 b=20 c=3
A=10 b=20 c=30
В языке C++ аргументы функции передаются по значению, т.е. вызванная функция получает временную копию каждого аргумента, а не его адрес. Например:
Void some_f(int a)
{
A=5;
}
Main(void){
Int A=3;
Some_f(A);
Pritnf(“A=%d”,A);
}
Void swap(int *a, int *b)
{ int *tmp=*a;
*a=*b;
*b=*tmp;
}
Данная функция должна вызываться следующим образом: swap(&b,&c);
Если же в качестве аргумента функции используется имя массива, то передается только адрес начала массива, а сами элементы не копируются. Функция может изменять элементы массива, сдвигаясь от его начала.