MLGetUCS2Symbol (C 関数)

MLGetUCS2SymbolWSGetUCS2Symbolに置き換えられた.

int MLGetUCS2Symbol(MLINK link,const unsigned short **s,int *len)

link で指定されたMathLink接続から記号名に対応するUCS-2文字列を得て,その結果できた文字列を s に,そして長さを len に保持しておく.

詳細

  • MLGetUCS2Symbol()は文字列にメモリを割り当てる.このメモリを解放するためにはMLReleaseUCS2Symbol()を呼び出さなくてはならない.MLGetUCS2Symbol()が不成功で関数の返す値がエラーを示す場合には,s のコンテンツについてMLReleaseUCS2Symbol()を呼び出してはならない.
  • MLGetUCS2Symbol()で終了する文字列を作成する.
  • MLGetUCS2Symbol()はエラーがあると0を返し,関数が成功すると0以外の値を返す.
  • MLError()を使うと,MLGetUCS2Symbol()が不成功の場合にエラーコードを引き出すことができる.
  • MLGetUCS2Symbol()は,MathLinkヘッダファイルmathlink.hの中で宣言される.

例題

  (1)

#include "mathlink.h"

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

void f(MLINK lp)
{
    const unsigned short *symbol;
    int len;

    if(! MLGetUCS2Symbol(lp, &symbol, &len))
        {
            /* unable to retrieve the UCS-2 symbol */
            return;
        }

    /* ... */

    MLReleaseUCS2Symbol(lp, symbol, len);
}