WSGetNetworkAddressList (C 函数)
char ** WSGetNetworkAddressList(WSENV env,unsigned long *n)
返回包含机器上已配置网络接口的 IP 地址的 ASCII 字符串列表和 n 中的列表长度.
更多信息
- WSGetNetworkAddressList() 为机器上每个有源网络接口加载 IP 数字.
- WSGetNetworkAddressList() 加载 IPv4 和 IPv6 数字.
- WSGetNetworkAddressList() 分配内存以便存储必须释放的地址. 为释放由 WSGetNetworkAddressList() 分配的内存,可调用由 WSGetNetworkAddressList() 返回的列表中的 WSReleaseNetworkAddressList().
- 若 WSGetNetworkAddressList() 失败,则返回 NULL.
- 在 WSTP 的标头文件 wstp.h 中对 WSGetNetworkAddressList() 作出声明.
范例
基本范例 (1)
#include "wstp.h"
/* A function that reads the IP addresses available on a machine */
void f(WSENV env)
{
char **theList = NULL;
char *tmp;
unsigned long length;
theList = WSGetNetworkAddressList(env, &length);
if(length > 0 && theList != (char **)0)
{
while((tmp = *theList++) != (char *)0)
{
/* ... */
}
WSReleaseNetworkAddressList(env, theList, length);
}
}