Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Оператор объявления процедур на языках семейства Microsoft - DECLARE



Назначение: Объявляет вызываемые последовательности внешних процедур, написанных на других языках программирования семейства Microsoft.

Синтаксис 1:

DECLARE FUNCTION < имя> [CDECL] [ALIAS ''< альтернативное имя>''] [ ([ <список параметров> ]) ]

Синтаксис 2

DECLARE SUB < имя> [CDECL] [ALIAS "<альтернативное имя>"] [([ <список параметров> ]) ]

Элемент Описание
FUNCTION Указывает, что внешняя процедура возвращает значение; может использоваться в составе арифметических выражений
SUB Указывает, что внешняя процедура вызывается аналогично BASIC-процедуре
<имя> Имя, используемое в BASIC-программе для вызова процедуры; длина до 40 символов; имя процедуры-функции может включать маркер типа (%, &,!, #, $) для.возвращаемой величины.
CDECL Указывает, что процедура использует порядок размещения аргументов, свойственный языку С; ключевое слово CDECL указывает на передачу аргументов справа налево, а не слева направо, как принято в среде языка BASIC
ALIAS Указывает, что процедура имеет другое имя в.OBJ-файле или библиотеке; если отсутствует ключ ALIAS, то имя процедуры отображается строчными буквами, маркер типа удаляется, а в начале имени добавляется символ подчеркивания, и именно это имя используется при поиске библиотек и внешних файлов; если за ключомCDECL следует ключ ALIAS, то используется указанное альтернативное имя.

Синтаксис аргумента <список параметров>

[ {BYVAL SEG} ] <переменная> [AS <тип>]

[, [ {BYVAL SEG} ] <переменная> [AS <тип>] ]...

Элемент Описание
BYVAL Указывает, что параметр передается значением, а не ссылкой; передача ссылкой принята по умолчанию; ключ можно применять только для числовых параметров типа INTEGER, LONG, SINGLE, DOUBLE; при использовании BYVAL текущий аргумент преобразуется к типу, указанному в операторе DECLARE, непосредственно перед передачей параметра
SEG Указывает, что параметр передается адресом сегмента
<переменная> Имя, допустимое для переменных языка BASIC; существенным является тип переменной; если переменная - массив, то в скобках можно указать его размерность (в частности, чтобы обеспечить совместимость с прежними версиями языка)
AS <тип> Указывает тип переменной: INTEGER, LONG, SINGLE, DOUBLE, STRING, ANY - или имя структуры; можно указывать также и маркер типа (%, &,!, #, $) или принимать его по умолчанию; при объявлении внешних процедур, написанных на других языках, можно указать тип ANY, и это приведет к тому, что проверка типа не выполняется; нельзя использовать тип ANY для аргумента, передаваемого значением

Если не используются ключи BYVAL и SEG, то аргументы передаются смещением.





Дата публикования: 2014-11-19; Прочитано: 185 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...