MLPutNext()
This feature is not supported on the Wolfram Cloud.

WSPutNextに置き換えられた.

int MLPutNext(MLINK link,int type)
link 上に指定された型のオブジェクトを置く準備をする.

詳細詳細

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

例題例題すべて開くすべて閉じる

  (1)  (1)

#include "mathlink.h"

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

void f(MLINK lp)
{
    if(! MLPutNext(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 any buffered outgoing data to lp */ }
}