seesi(不是我想骗你,是我不知道怎么才能不骗!)你在吗? ??说我?说他?这是SOCKET API的编程所用的。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 SOCKET m_hSocket; //socket句柄typedef struct sockaddr FAR *LPSOCKADDR;//在WinSocket.h中定义返回的地址放在psa中struct sockaddr { u_short sa_family; char sa_data[14];}; const char* GetHostByAddr(LPCSOCKADDR psa){ hostent* pHostEnt = gethostbyaddr((char*) &((LPSOCKADDR_IN) psa) ->sin_addr.s_addr, 4, PF_INET); if(pHostEnt == NULL) { throw new CException("Socket名字反向解析"); } return pHostEnt->h_name; // caller shouldn't delete this memory} //反向解析SOCKADDR,获得主机名,放在CBlockingSocket,并作为static型成员函数可能更好些 简易睡眠初筛分析系统 CListView 闪烁问题!!! 是不是用原始套接字实现Sniffer(嗅探),必然会把网卡置于混杂模式? 关于图象传送 一个变量在不同的地方返回不同的地址???? 一个关于TreeCtrl节点中存放数据结构的问题? vc.net与vc6又什么区别??? 关于内存泄露的问题??? ??? IE风行者的"超级拖拽"编程思想 ??? VC控件中,对数据库操作的是哪几个? 对话框间的参数传递 懂MPEG7的看过来
typedef struct sockaddr FAR *LPSOCKADDR;//在WinSocket.h中定义
返回的地址放在psa中
struct sockaddr {
u_short sa_family;
char sa_data[14];
};
{
hostent* pHostEnt = gethostbyaddr((char*) &((LPSOCKADDR_IN) psa)
->sin_addr.s_addr, 4, PF_INET);
if(pHostEnt == NULL) {
throw new CException("Socket名字反向解析");
}
return pHostEnt->h_name; // caller shouldn't delete this memory
}