#include <winsock2.h>
#include <stdio.h>
#include <stdlib.h>void main()
{
struct hostent *hp;
struct sockaddr_in dest,from;
char *server_name= "10.10.1.2";
unsigned int addr;
WSADATA wsaData; WSAStartup(MAKEWORD(1,2),&wsaData);
addr = inet_addr(server_name);
hp = gethostbyaddr(&server_name,strlen(server_name),AF_INET);
//在这里为什么hp没有值,怎样得到
//反正就是想得到指定IP的机器名或者得到机器名的IP地址
hp=gethostbyname("server"); printf("%s\n",hp->h_name);
}
我是初学者
回复代码请简单一些好吗?
谢谢
#include <stdio.h>
#include <stdlib.h>void main()
{
struct hostent *hp;
struct sockaddr_in dest,from;
char *server_name= "10.10.1.2";
unsigned int addr;
WSADATA wsaData; WSAStartup(MAKEWORD(1,2),&wsaData);
addr = inet_addr(server_name);
hp = gethostbyaddr(&server_name,strlen(server_name),AF_INET);
//在这里为什么hp没有值,怎样得到
//反正就是想得到指定IP的机器名或者得到机器名的IP地址
hp=gethostbyname("server"); printf("%s\n",hp->h_name);
}
我是初学者
回复代码请简单一些好吗?
谢谢
LONG lPort=8001;
struct sockaddr_in ServerHostAddr;//服务主机地址
ServerHostAddr.sin_family=AF_INET;
ServerHostAddr.sin_port=::htons(u_short(lPort));
ServerHostAddr.sin_addr.s_addr=::inet_addr(m_addr);
HOSTENT* pResult=gethostbyaddr((const char *) &
(ServerHostAddr.sin_addr.s_addr),4,AF_INET);
return pResult->h_name;