MLGetUTF32Symbol (C 函数)
MLGetUTF32Symbol 已经被 WSGetUTF32Symbol 所取代.
int MLGetUTF32Symbol(MLINK link,const unsigned int **s,int *len)
从由 link 指定的 MathLink 连接中获取一个对应于一个符号名称的 UTF-32 字符字符串,并把结果字符串存在 s,字符串的长度存在 len.
更多信息
- MLGetUTF32Symbol() 为字符字符串分配内存. 必须调用 MLReleaseUTF32Symbol() 释放该内存. 如果 MLGetUTF32Symbol() 失败并且函数的返回值表明一个错误,不要调用含有 s 内容的 MLReleaseUTF32Symbol().
- MLGetUTF32Symbol() 返回不可变的数据.
- MLGetUTF32Symbol() 把所有字符直接存为 UTF-32 编码形式.
- MLGetUTF32Symbol() 在错误事件中返回0,如果函数成功则返回非零值.
- 如果 WLGetUTF32Symbol() 失败,则使用 MLError() 检索错误代码.
- MLGetUTF32Symbol() 在 MathLink 标头文件 mathlink.h 中被声明.
范例
基本范例 (1)
#include "mathlink.h"
/* read a UTF-32 encoded symbol from a link */
void f(MLINK lp)
{
const unsigned int *symbol;
int len;
if(! MLGetUTF32Symbol(lp, &symbol, &len))
{
/* unable to read the UTF-32 symbol from lp */
return;
}
/* ... */
MLReleaseUTF32Symbol(lp, symbol, len);
}