PROTO
Прототипы функции или процедуры. Вы можете вызвать функцию, прототипированную директивой PROTO, с помощью директивы INVOKE .
Синтаксис
label PROTO ⟦distance⟧ ⟦language-type⟧ ⟦, ⟦parameter⟧:tag ... ⟧
Параметры
label
Имя прототипной функции.
расстояние (только 32-разрядная версия MASM.)
(Необязательно) Используется в 16-разрядных моделях памяти для переопределения по умолчанию и указания вызовов NEAR или FAR .
тип языка (только 32-разрядная версия MASM.)
(Необязательно) Задает соглашение о вызовах и именовании для процедур и открытых символов. Поддерживаемые соглашения:
32-разрядная модель FLAT : C, STDCALL
16-разрядные модели: C, BASIC, FORTRAN, PASCAL, SYSCALL, STDCALL
parameter
Необязательное имя параметра функции.
tag
Тип параметра функции.
Параметры параметра и тега могут отображаться несколько раз, один раз для каждого переданного аргумента.
Пример
В этом примере показано объявление PROTO для функции с именем addup3
, которая использует вызов NEAR для переопределения 16-разрядной модели по умолчанию для вызовов процедур и использует соглашение о вызовах C для параметров стека и возвращаемых значений. Он принимает два аргумента, WORD и VARARG.
addup3 PROTO NEAR C, argcount:WORD, arg1:VARARG
См. также
Справочник по директивам
. Справочник по МОДЕЛИ
Грамматика MASM BNF