CreateForeignCallback

CreateForeignCallback[f,type]

外部ライブラリから呼び出せる指定の型の外部コールバックを作成する.

詳細

  • CreateForeignCallbackは,管理されたForeignCallbackオブジェクトを返す.
  • 次は,使用可能な引数と戻り値の型および対応するCの型である.
  • "UnsignedInteger8"uint8_t符号なし8ビット整数
    "Integer8"int8_t符号あり8ビット整数
    "UnsignedInteger16"uint16_t符号なし16ビット整数
    "Integer16"int16_t符号あり16ビット整数
    "UnsignedInteger32"uint32_t符号なし32ビット整数
    "Integer32"int32_t符号あり32ビット整数
    "UnsignedInteger64"uint64_t符号なし64ビット整数
    "Integer64"int64_t符号あり64ビット整数
    "CUnsignedChar"unsigned charC互換の符号なしchar型
    "CSignedChar"signed charC互換の符号ありchar型
    "CUnsignedShort"unsigned shortC互換の符号なしshort型
    "CShort"shortC互換のshort型
    "CUnsignedInt"unsigned intC互換の符号なしint型
    "CInt"intC互換のint型
    "CUnsignedLong"unsigned longC互換の符号なしlong型
    "CLong"longC互換のlong型
    "CSizeT"size_tC互換のsize_t
    "CFloat"floatC互換のfloat型
    "CDouble"doubleC互換のdouble型
    "OpaqueRawPointer"void*不透明なポインタ
    "RawPointer"::[t]t*型付きポインタ
    {ty1,ty2,}struct {ty1 f1; ty2 f2; }struct型またはproduct型
    "Void"void出力なし(入力型のみ)

例題

  (1)

関数ポインタを取る外部関数をロードする:

外部コールバック関数を作成する:

外部関数を呼び出して外部コールバックを渡す:

02
0
12
1
22
4
32
9
42
16
52
25
62
36
72
49
82
64
92
81

出力を読む:

Wolfram Research (2023), CreateForeignCallback, Wolfram言語関数, https://reference.wolfram.com/language/ref/CreateForeignCallback.html.

テキスト

Wolfram Research (2023), CreateForeignCallback, Wolfram言語関数, https://reference.wolfram.com/language/ref/CreateForeignCallback.html.

CMS

Wolfram Language. 2023. "CreateForeignCallback." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/CreateForeignCallback.html.

APA

Wolfram Language. (2023). CreateForeignCallback. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/CreateForeignCallback.html

BibTeX

@misc{reference.wolfram_2024_createforeigncallback, author="Wolfram Research", title="{CreateForeignCallback}", year="2023", howpublished="\url{https://reference.wolfram.com/language/ref/CreateForeignCallback.html}", note=[Accessed: 05-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_createforeigncallback, organization={Wolfram Research}, title={CreateForeignCallback}, year={2023}, url={https://reference.wolfram.com/language/ref/CreateForeignCallback.html}, note=[Accessed: 05-November-2024 ]}