次の方法で共有


PROTO

関数またはプロシージャを試作します。 INVOKE ディレクティブを使用し、PROTO ディレクティブで試作された関数を呼び出すことができます。

構文

label PROTOdistancelanguage-type,parameter:tag ...⟧

パラメーター

label
試作された関数の名前。

distance (32 ビット MASM のみ)
(省略可能) 16 ビット メモリ モデルで使用され、既定値をオーバーライドし、NEAR または FAR 呼び出しを示します。

language-type (32 ビット MASM のみ)
(省略可能) プロシージャとパブリック シンボルの呼び出しと名前付けの規則を設定します。 サポートされている規則は次のとおりです。

  • 32 ビット FLAT モデル: CSTDCALL

  • 16 ビット モデル: CBASICFORTRANPASCALSYSCALLSTDCALL

parameter
関数パラメーターの省略可能な名前。

タグ
関数パラメーターの型。

parameter および tag パラメーターは複数回表示されることがあります。渡された引数ごとに 1 回です。

このサンプルでは、addup3 という名前の関数の PROTO 宣言が表示されています。この関数では、NEAR 呼び出しを使用し、プロシージャ呼び出しの 16 ビットモデル既定値をオーバーライドし、スタック パラメーターと戻り値に C 呼び出し規則を使用します。 WORDVARARG という 2 つの引数を受け取ります。

addup3 PROTO NEAR C, argcount:WORD, arg1:VARARG

関連項目

ディレクティブ リファレンス
.モデル リファレンス
MASM BNF 文法