WSPutType (C 函数)

int WSPutType(WSLINK link, int type)

为写入由 type 指定的对象而准备 link.

更多信息

  • 所有 type 值都由 WSTK 开始.
  • 有以下常用类型:
  • WSTKERR错误
    WSTKINT整数
    WSTKFUNC复合函数
    WSTKREAL近似实数
    WSTKSTR字符字符串
    WSTKSYM符号
    WSTKOLDINT来自于 WSTP 库老版本的整数
    WSTKOLDREAL来自于 WSTP 库老版本的近似实数
    WSTKOLDSTR来自于 WSTP 库老版本的字符字符串
    WSTKOLDSYM来自于 WSTP 库老版本的符号
  • WSTKINTWSTKREAL 没有必要对可以储存在 C intdouble 变量中的数字进行符号化.
  • 若发生错误,则 WSPutType() 返回0;若函数成功,则返回非零值.
  • WSPutType() 失败,则使用 WSError() 检索错误代码.
  • WSTP 的标头文件 wstp.h 已对 WSPutType() 作出声明.

范例

基本范例  (1)

#include "wstp.h"

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

void f(WSLINK lp)
{
    if(! WSPutType(lp, WSTKFUNC))
        { /* unable to put the function type to lp */ }

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

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

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

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

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