如何判断一个ACE_INET_Addr是否是本机?
用ACE_INET_Addr创建本机的地址有好多种:
ACE_INET_Addr local("localhost");
ACE_INET_Addr local(3333, "localhost");
ACE_INET_Addr local(3333, "192.168.....");//自己的ip
可是这三种方法local.get_host_name都不一样,
分别是:
localhost,mycomputer,mycomputer.private等,不知道怎么判断如何判断一个ACE_INET_Addr是否是本机了。
期待指点呵呵~~

最新回复
{
WSADATA wsaData;
char name[155];
PHOSTENT hostinfo;
if ( WSAStartup( MAKEWORD(2,0), &wsaData ) == 0 ) {
if( gethostname ( name, sizeof(name)) == 0) {
if((hostinfo = gethostbyname(name)) != NULL) {
//这些就是获得IP的函数
ip = inet_ntoa (*(struct in_addr *)*hostinfo->h_addr_list);
}
}
WSACleanup( );
}
}
跨平台吗
没找到ACE有封装,就自己封装一个跨平台的。
谢啦:)