WSGetNumberAsUCS2String (C 関数)
int WSGetNumberAsUCS2String(WSLINK l, const unsigned short **s, int *n)
l が指定するWSTP接続上の次の数を,長さ n の文字列 s に保存された数の値を表すUCS2の文字列として読み取る.
詳細
- WSGetNumberAsUCS2String()はメモリを割り当てて,文字列の値を保存する.WSGetNumberAsUCS2String()によって割り当てられたメモリを解放するには,s の内容についてWSReleaseUCS2String()を呼び出す.WSGetNumberAsUCS2String()が失敗した場合には,s の内容についてWSReleaseUCS2String()を呼び出してはならない.
- WSGetNumberAsUCS2String()は,エラーの場合には0を,関数が成功した場合には非零の値を返す.
- WSGetNumberAsUCS2String()は,WSTPヘッダファイルwstp.hの中で宣言される.
例題
例 (1)
#include "wstp.h"
/* A function for reading an integer from a link */
void f(WSLINK l)
{
switch(WSGetType(l))
{
case WSTKINT:
{
int rawType;
rawType = WSGetRawType(l);
if(rawType == WSTK_WSSHORT)
{
short theNumber;
WSGetInteger16(l, &theNumber);
/* ... */
}
else if(rawType == WSTK_WSINT)
{
int theNumber;
WSGetInteger32(l, &theNumber);
/* ... */
}
else
{
const unsigned short *theNumber;
int length;
WSGetNumberAsUCS2String(l, &theNumber, &length);
/* ... */
WSReleaseUCS2String(l, theNumber, length);
}
}
break;
case WSTKREAL:
/* ... */
}
}