MLGetLinkedEnvIDString (C 関数)
MLGetLinkedEnvIDStringはWSGetLinkedEnvIDStringに置き換えられた.
int MLGetLinkedEnvIDString(MLINK link,const char **e)
link に接続されているMathLink環境の識別文字列を返し,それを e に保持する.
詳細

- MLGetLinkedEnvIDString()は文字列 eid のためにメモリを割り当てる.このメモリを開放するためには,MLReleaseEnvIDString()を呼び出さなくてはならない.MLGetLinkedEnvIDString()が不成功で関数の返す値がエラーを示す場合には,e のコンテンツについてMLReleaseEnvIDString()を呼び出してはならない.
- MLGetLinkedEnvIDString()は不変の文字列を返す.
- MLGetLinkedEnvIDString()が返す環境識別はヌル終端のASCII文字列である.
- MLGetLinkedEnvIDString()は,link が接続されるまで作動しない.
- MLGetLinkedEnvIDString() はエラーがあると0を返し,関数が成功すると0以外の値を返す.
- MLError()を使うと,MLGetLinkedEnvIDString()が不成功の場合にエラーコードを引き出すことができる.
- MLGetLinkedEnvIDString()は,MathLinkヘッダファイルmathlink.hの中で宣言される.
例題
例 (1)
#include <string.h>
#include "mathlink.h"
/* read the id from a link and check for "My Remote Program" */
#define ERROR -1
int f(MLINK lp)
{
int isCorrectProg;
const char *e;
if(! MLGetLinkedEnvIDString(lp, &e))
{
/* unable to read the link id from lp */
return ERROR;
}
isCorrectProg = strcmp(envid, "My Remote Program") == 0;
MLReleaseEnvIDString(lp, e, length);
return isCorrectProg;
}