简单的Winsock例程

王朝vc·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

这个程序的功能用来获得本机的主机名(Hostname)和IP地址。

程序如下:

#include <stdio.h>

#include <winsock.h>

int doit(int rgc,char** rgv)

{

char ac[80];

struct hostent* phe;

struct in_addr addr;

int i;

if(gethostname(ac,sizeof(ac))==SOCKET_ERROR)

{

printf("Error %d when getting local hostname.\n",WSAGetLastError());

return 1;

}

printf("The host name is:%s\n",ac);

phe=gethostbyname(ac);

if(phe==0)

{

printf("Error!Bad host lookup.\n");

return 1;

}

for (i=0;phe->h_addr_list[i]!=0;++i)

{

memcpy(&addr,phe->h_addr_list[i],sizeof(struct in_addr));

printf("Address %d is %s.\n",i,inet_ntoa(addr));

}

return 0;

}

int main(int argc,char* argv[])

{

WSADATA wsaData;

int retval;

if(WSAStartup(MAKEWORD(1,1),&wsaData)!=0)

{

return 255;

}

retval=doit(argc,argv);

WSACleanup();

return retval;

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航