Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Otvety_na_ekzamen_po_OAiP_shpora.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
231.42 Кб
Скачать
  1. Функции в с. Способы описания функции, операция вызова функции.

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

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

<тип_результата> <имя_функции>(<тип> <переменная>, …<тип> <переменная>);

Идентификаторы переменных в круглых скобках прототипа указывать не обязательно, так как компилятор языка их не обрабатывает.

Пример описания функции fun со списком параметров:

float fun(int, float, int, int);

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

Полное определение функции имеет следующий вид:

<тип_результата_функции> <имя_функции>(список параметров)

{

код функции

} Тип результата определяет тип значения, который возвращается функцией в точку ее вызова при помощи оператора возврата return. Если тип функции не указан, то по умолчанию предполагается тип int. Список параметров состоит из перечня типов и имен параметров, разделенных запятыми. Функция может не иметь параметров (void), но круглые скобки необходимы в любом случае. Оператор return вызывает немедленный выход из данной функции и возврат в вызывающую ее функцию. Этот оператор также используется для возврата результата работы функции. Отметим, что в теле функции может быть несколько операторов return, но может и не быть ни одного. В таких случаях возврат в вызывающую ее функцию происходит после выполнения последнего оператора. Вызов функции имеет следующий формат: <имя_функции>(список_аргументов) где в качестве аргументов можно использовать константы, переменные, выражения (их значения перед вызовом функции будут компилятором определены). Аргументы списка вызова должны полностью совпадать со списком параметров вызываемой функции по количеству, порядку следования и типам соответствующих им параметров. Отметим, что в случае отсутствия аргументов (в заголовке функции отсутствуют параметры) наличие круглых скобок у имени функции в точке ее вызова обязательно.

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

Если у функции отсутствует список параметров, то при декларации такой функции желательно в круглых скобках также указать ключевое слово void. Например:

void messag(void).

В языке С каждая функция – это отдельный блок программы, вход в который возможен только через вызов данной функции. Например, нельзя оператором перехода goto передать управление внутрь функции.

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