MLPutType (C 関数)

MLPutTypeWSPutTypeに置き換えられた.

int MLPutType(MLINK link, int type)

指定されたtype のオブジェクトを置くためにlink を準備する.

詳細

  • すべてのtype の値はMLTKで始まる.
  • 次の型がよく使われるものである:
  • MLTKERRエラー
    MLTKINT整数
    MLTKFUNC合成関数
    MLTKREAL近似実数
    MLTKSTR文字列
    MLTKSYM記号
    MLTKOLDINT古いバージョンのMathLinkライブラリからの整数
    MLTKOLDREAL古いバージョンのMathLinkライブラリからの近似実数
    MLTKOLDSTR古いバージョンのMathLinkライブラリからの文字列
    MLTKOLDSYM古いバージョンのMathLinkライブラリからの記号
  • MLTKINTMLTKREALが必ずしもC言語のint型とdouble型の変数で保持することができる数字を意味する訳ではない.
  • MLPutType()はエラーがあると0を返し,関数が成功するとゼロ以外の値を返す.
  • MLError()を使うと,MLPutType()が不成功の場合にエラーコードを引き出すことができる.
  • MLPutType()は,MathLinkヘッダファイルmathlink.hの中で宣言される.

例題

  (1)

#include "mathlink.h"

/* send a function using tokens and argument counts to a link */

void f(MLINK lp)
{
    if(! MLPutType(lp, MLTKFUNC))
        { /* unable to put the function type to lp */ }

    if(! MLPutArgCount(lp, 2))
        { /* unable to put the number of arguments to lp */ }

    if(! MLPutSymbol(lp, "Plus"))
        { /* unable to put the symbol to lp */ }

    if(! MLPutInteger32(lp, 2))
        { /* unable to put the integer to lp */ }

    if(! MLPutInteger32(lp, 3))
        { /* unable to put the integer to lp */ }

    if(! MLFlush(lp))
        { /* unable to flush an buffered outgoing data to lp */ }
}