Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






  • Сервис онлайн-записи на собственном Telegram-боте
    Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое расписание, но и напоминать клиентам о визитах тоже. Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.
    Для новых пользователей первый месяц бесплатно.
    Чат-бот для мастеров и специалистов, который упрощает ведение записей:
    Сам записывает клиентов и напоминает им о визите;
    Персонализирует скидки, чаевые, кэшбэк и предоплаты;
    Увеличивает доходимость и помогает больше зарабатывать;
    Начать пользоваться сервисом
  • Объявление, определение, параметры и вызов функции






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

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

    // Прототип функции func с одним целым параметром,

    // возвращающей в качестве результата целое число:

    int func (int a);

    // Прототип функции s с двумя параметрами типа int,

    // возвращающей результат типа double:

    double s (int x, int y);

    // Прототип функции f без параметров, возвращающей целое число:

    int f ();

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

    int func (int);

    double s (int, int);

    Определение функции описывает дей­ствия, выполняемые функцией для получения результата. Оно начинается заголовком, который указывает тип возвращаемого функцией значения, имя функции, список параметров функции и их типы. После заголовка в фигурных скобках записываются операторы (тело) функции – действия, которые данная функция выполняет. Пример определения функции, принимающей в качестве параметра значение типа int, вычисляющей и возвращающей его квадрат:

    int func (int a) // заголовок функции

    {

    int sq = a * a; // тело функции...

    return sq;

    }

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

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

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

    Несколько примеров использования определенной выше функции func, имеющей один параметр типа int и возвращающей значение этого же типа (a, b, c, d, k, m, n, x, y, z – переменные типа int):

    a = func (3);

    b = n + func (m);

    c = func (z-y) + func (y+4);

    cout < < func (x);

    d = func (func (k)); // " вложенный" вызов функции

    Объявить функцию необходимо перед ее первым вызовом и сделать это можно одним из двух способов.

    Во-первых, можно использовать предварительное объявление (прототип) функ­ции, “анонсируя” последующее ее определение. Анонсированное прототипом определение функции может располагаться в любом последующем месте программы, например:

    int func(int); // объявление (прототип) функции func

    ...

    int main ()

    {

    int x, y;

    ...

    x = func(y); // вызов (обращение к) функции func

    ...

    }

    int func(int a) // определение функции func

    {

    ...

    }

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

    Еще один способ объявить функцию – расположить определение функции перед первым ее вызовом:

    int func(int a)

    {

    ...

    }

    int main ()

    {

    int x, y;

    ...

    x = func(y);

    ...

    }

    Функция может не возвращать никакого значения. В этом случае её результат должен быть объявлен с типом void, а её вызов не может быть использован в выражении:

    void func_2(int a)

    {

    cout < < a * a;

    }

    int main ()

    {

    ...

    func_2 (10); // вызов функции func_2 типа void

    ...

    }






    © 2023 :: MyLektsii.ru :: Мои Лекции
    Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
    Копирование текстов разрешено только с указанием индексируемой ссылки на источник.