MLGetUCS2String (C 函数)

MLGetUCS2String 已经被 WSGetUCS2String 所取代.

int MLGetUCS2String(MLINK link,const unsigned short **s,int *n)

从由 link 指定的 MathLink 连接中获取一个字符字符串,并把字符串以 UCS-2 字符序列的形式存在 s 中.

更多信息

  • MLGetUCS2String() 为字符字符串分配内存. 必须调用 MLReleaseUCS2String() 释放该内存. 如果 MLGetUCS2String() 失败并且函数的返回值表明一个错误,不要调用含有 s 内容的 WLReleaseUCS2String().
  • MLGetUCS2String() 返回不可变的数据.
  • MLGetUCS2String() 把所有字符直接存为16位 UCS-2 形式.
  • ASCII 字符与一个零(null)高阶字节一起存储.
  • MLGetUCS2String() 在错误事件中返回0,如果函数成功则返回非零值.
  • 如果 MLGetUCS2String() 失败,则使用 MLError() 检索错误代码.
  • MLGetUCS2String() 在 MathLink 标头文件 mathlink.h 中被声明.

范例

基本范例  (1)

#include "mathlink.h"

/* read a UCS-2 encoded string from a link */

void f(MLINK lp)
{
    const unsigned short *string;
    int length;

    if(! MLGetUCS2String(lp, &string, &length))
        {
            /* unable to read the UCS-2 string */
            return;
        }

    /* ... */

    MLReleaseUCS2String(lp, string, length);
}