MLGetAvailableLinkProtocolNames (C 函数)
MLGetAvailableLinkProtocolNames has been replaced by WSGetAvailableLinkProtocolNames.
int MLGetAvailableLinkProtocolNames( MLENV env , char *** p , int * l )
从 MathLink 环境 env 中获取一张含有安装链接协议名称的字符串列表,字符串保存在 p 中,名称列表长度保存在 l 中.
更多信息

- MathLink 目前支持如下链接协议名称:SharedMemory、TCPIP、IntraProcess、Pipes、FileMap 和 TCP.
- 并非所有链接协议都在所有平台上可用.
-
平台 协议 Linux SharedMemory, TCPIP, Intraprocess, Pipes, TCP Windows SharedMemory, TCPIP, IntraProcess, FileMap, TCP OS X SharedMemory, TCPIP, IntraProcess, Pipes, TCP - MLGetAvailableLinkProtocolNames() 分配内存来储存必须调用 MLReleaseLinkProtocolNames() 才能放出的协议名称列表. 如果 MLGetAvailableLinkProtocolNames() 返回错误,则不能调用 MLReleaseLinkProtocolNames() p 中的内容.
- 若成功,MLGetAvailableLinkProtocolNames() 返回0;若失败,则返回非零值.
- MathLink 的标头文件 mathlink.h 已对 MLGetAvailableLinkProtocolNames() 作出声明.
范例
基本范例 (1)
#include "mathlink.h"
int main()
{
MLENV env;
char **protocolNames;
int length;
int apiResult;
env = MLInitialize((MLEnvironmentParameter)0);
if(env == (MLENV)0)
{ /* Unable to create MathLink environment */ }
apiResult = MLGetAvailableLinkProtocolNames(env, &protocolNames, &length);
if(apiResult != 0)
{ /* Unable to retrieve link protocol names */ }
/* ... */
MLReleaseLinkProtocolNames(env, protocolNames, length);
MLDeinitialize(env);
}