![]() | |||||
|
|
Теория: Подпрограммы, программы и функции1. Основная программаОсновная программа - это любая программная единица, у которой первый оператор - это не FUNCTION,SUBROUTINE или BLOCK DATA. Первым оператором основной программы может быть оператор PROGRAM. Если у основной программы нет оператора PROGRAM, ей будет присвоено имя MAIN. Имя MAIN тогда не может быть использовано как имя любого другого глобального объекта. Выполнение программы всегда начинается с первого выполняемого оператора основной программы. Соответственно, в каждой выполняемой программе должна быть только одна основная программа. Для дополнительной информации о программах и операторе PROGRAM смотрите часть 3 "Операторы". 2. ПодпрограммыПодпрограмма - это программная единица, которая может быть вызвана из другой программной единицы c помощью оператора CALL. Будучи вызванной, подпрограмма производит набор действий, определенных ее выполняемыми операторами, и затем возвращает управление на оператор, следующий непосредственно за вызвавшим ее оператором, или на оператор, определенный как переменный возврат (смотрите оператор CALL в части 3). Подпрограмма не возвращает величину прямо, хотя величины могут быть возвращены в вызывающую программную единицу через параметры и COMMON-блоки. Для более подробной информации о подпрограммах смотрите часть 3 "Операторы". 3. ФункцииНа функцию ссылаются в выражении, и она возвращает величину, которая используется при вычислении этого выражения. Существует три вида функций:
Каждый из них описан более подробно в дальнейших параграфах.Б/зЮ Ссылка на функцию может появиться в арифметическом или логическом выражении. Когда выполняется ссылка на функцию, функция вызывается, а величина результата используется как операнд в выражении, которое содержит ссылку на функцию. Форма ссылки на функцию следующая:Б/зЮ ------------------------------------------------
имя-функции ([пар[,пар]...])
------------------------------------------------
имя-функции - это определенное пользователем имя внешней или
встроеной функции или функции-оператора.
пар - это фактический параметр.
Правила для параметров функций аналогичны правилам для подпрограмм (за исключением переменного возврата, который недопустим) и приведены в описании оператора CALL в части 3. Некоторые дополнительные ограничения, применимые для функций-операторов и встроеных функций, описаны ниже в этой части. 3.1. Внешние функции.Внешняя функция определена программной единицей функции. Она начинается оператором FUNCTION и заканчивается оператором END. Она может содержать любые виды операторов, кроме PROGRAM, FUNCTION, SUBROUTINE или BLOCK DATA. |
||||
![]() | Copyright © fortran-online.info, 2007 | ||||