Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Otvety_na_bilety.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
1.3 Mб
Скачать

Вопрос 14 Синтаксис описания функций. Формальные и фактические параметры.

Синтаксис:

Type name (список формальный пар-ов)

{

тело функции;

}

Type- тип рез-та ф-ции. Рез-т ф-ции должен быть числовой. Если ф-ция не возвращает

никакого значения, то тип результата ф-ции void;

name- имя ф-ции( произвольный идентификатор)

список форм параметров- список описаний формальных параметров, при помощи которых ф-ция связывается с программой. Имеет вид:

тип1 параметр 1, тип2 параметр 2 и т.д.

тело функции- составной оператор ( или блок) реализующий свойственные ф-ции действие. В теле ф-ции должен присутствовать оператор return выражение ; где тип выражения должен совпадать с типом результата ф-ции. Если тип рез-та ф-ции void то оператора return может отсутствовать.

Описание ф-ции без тела ф-ции наз-ся заголовком ф-ции. Заголовок ф-ции несет след нагрузку:

-указывает имя ф-ции

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

Через него мы указываем, что мы подаем на вход ф-ции, и где и в каом виде будем получать рез-т.

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

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

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

Формальные и фактические пар-ры.

Формальные – пар-ры, который записываются в заголовке после имени ф-ции при ее описании.

Фактические- пар-ры, которые подставляются вместо формальных пар-ов при вызове ф-ции.

Вопрос 15. Семантика функций. Области видимости имен. Локальные и глобальные имена. Функции как параметры.

Одним из атрибутов переменной является область ее действие.

Локальные переменные- переменные, описанные внутри функции. Область действия этих переменных - это блок, внутри которого они описаны. Данные переменные недоступны в других функциях. Локальные переменные в разных функциях могут иметь одинаковые имена – это разные переменные с разными областями действие.

Глобальные - переменные, описанные вне любой ф-ции. Они доступны внутри любой ф-ции. Область действия таких переменных - вся программа.

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

Такие ф-ции можно использовать, как пар-ры. Существует 2 способа передачи пар-ов в ф-цию по значению и по ссылке.

-по значению

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

- факт константа ( имеющая тип, совпадающий с типом соответствующего формального пар-ра)

-имя перемененной

- выражение

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

- по ссылкам

Оформляется: type_&param_

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]