外部関数の呼び出し(戻り値float(intキャスト)型)
val = callfunc64f(p1,p2,p3)
p1 : パラメーターが格納されている配列変数 p2 : 関数アドレス(64bit) p3 : パラメーター数
(プラグイン / モジュール : hspint64.dll)
同様な関数に可変長引数版のcfunc64もあります(こちらを推奨)。 p2で指定されているアドレス(64bit)をネイティブな関数として呼び出します。 関数の戻り値はfloat(intキャスト)型で返却します。戻り値がint/int64やdoubleの場合は、callfunc64i,callfunc64dを使用してください。 flaot(intキャスト)とは、int型の変数にfloat値を直接格納したものになります。 double型に変換する場合は、以下Webサイトの変換モジュールが必要です。 http://spn.php.xdomain.jp/hsp_koneta3.htm#tofloat 呼び出しの引数として、p1で指定された数値型配列変数に格納されている値を使用します。p3でパラメーター数を指定することができます。 例 : // http://spn.php.xdomain.jp/hsp_koneta3.htm#tofloat が必要です。 a.0=1 a.1=2 a.2=3 res = callfunc64f( a, proc, 3 ) mes todouble(res) 上の例では、procが示すアドレスの関数を(1,2,3)という引数で呼び出します。 呼び出した関数の戻り値が、そのままcallfunc64fの戻り値となります。 この関数は、自前で関数アドレスを用意して呼び出す特殊な状況に使用するものです。 通常は使用する必要がありません。また、外部関数呼び出しに失敗した場合には、フリーズや予期しない結果が起こる場合があるので、十分に注意して使用するようにしてください。
cfunc64 | 外部関数の呼び出し(可変長引数版) | (hspint64.dll) |
callfunc64i | 外部関数の呼び出し(戻り値int64型) | (hspint64.dll) |
callfunc64d | 外部関数の呼び出し(戻り値double型) | (hspint64.dll) |
callfunc |
プラグイン / モジュール | hspint64.dll |
バージョン | 1.03 |
作成日 | 2021/06/13 |
著作者 | inovia |
URL | https://hsp.moe/ |
備考 | #include "hsp3_64.as"
#include "hspint64.as" 以上2つのファイルをインクルードすること。 (ソースコード上の記述個所は一番上を推奨) |
タイプ | int64型拡張プラグイン |
グループ | callfunc |
対応環境 |
|
移植のヒント | 64bit版 Windows のみ |
hs ファイル | hsphelp\hspint64.hs |