MLPutNext (C 函数)

MLPutNext 已经被 WSPutNext 所取代.

int MLPutNext(MLINK link,int type)

准备在 link 中写入指定类型的对象.

更多信息

  • 所有 type 值以 WLTK 开头.
  • 有以下常用类型:
  • WLTKERR错误
    WLTKINT整数
    WLTKFUNC复合函数
    WLTKREAL近似实数
    WLTKSTR字符字符串
    WLTKSYM符号
    WLTKOLDINT来自于 MathLink 库老版本的整数
    WLTKOLDREAL来自于 MathLink 库老版本的近似实数
    WLTKOLDSTR来自于 MathLink 库老版本的字符字符串
    WLTKOLDSYM来自于 MathLink 库老版本的符号
  • WLTKINTWLTKREAL 没有必要符号化可以存在 C intdouble 变量中的数字.
  • MLPutNext() 在错误事件中返回0,如果函数成功则返回非零值.
  • 如果 MLPutNext() 失败,则使用 MLError() 检索错误代码.
  • MLPutNext() 在 MathLink 标头文件 mathlink.h 中被声明.

范例

基本范例  (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 */ }
}