Теория: Подпрограммы, программы и функции


1. Основная программа

Основная программа - это любая программная единица, у которой первый оператор - это не FUNCTION,SUBROUTINE или BLOCK DATA. Первым оператором основной программы может быть оператор PROGRAM. Если у основной программы нет оператора PROGRAM, ей будет присвоено имя MAIN. Имя MAIN тогда не может быть использовано как имя любого другого глобального объекта.

Выполнение программы всегда начинается с первого выполняемого оператора основной программы. Соответственно, в каждой выполняемой программе должна быть только одна основная программа.

Для дополнительной информации о программах и операторе PROGRAM смотрите часть 3 "Операторы".

2. Подпрограммы

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

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

Для более подробной информации о подпрограммах смотрите часть 3 "Операторы".

3. Функции

На функцию ссылаются в выражении, и она возвращает величину, которая используется при вычислении этого выражения. Существует три вида функций:

  1. Внешние функции
  2. Встроенные функции
  3. Функции-операторы.

Каждый из них описан более подробно в дальнейших параграфах.Б/зЮ

Ссылка на функцию может появиться в арифметическом или логическом выражении. Когда выполняется ссылка на функцию, функция вызывается, а величина результата используется как операнд в выражении, которое содержит ссылку на функцию. Форма ссылки на функцию следующая:Б/зЮ

------------------------------------------------
 имя-функции ([пар[,пар]...])
------------------------------------------------
     имя-функции - это определенное пользователем имя внешней или
                   встроеной функции или функции-оператора.
         пар     - это фактический параметр.

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

3.1. Внешние функции.

Внешняя функция определена программной единицей функции. Она начинается оператором FUNCTION и заканчивается оператором END. Она может содержать любые виды операторов, кроме PROGRAM, FUNCTION, SUBROUTINE или BLOCK DATA.

Теория  Далее>>>

Rambler's Top100

Copyright © fortran-online.info, 2007