首页 > 代码库 > 根据IP和Mask获得子网地址
根据IP和Mask获得子网地址
根据IP和Mask获得子网地址
unsigned int IPToUInt(const char *pIp){ int a,b,c,d; unsigned int addr=0; if( sscanf(pIp,"%d.%d.%d.%d",&a,&b,&c,&d)!=4 ) return 0; addr=a<<24; addr|=b<<16; addr|=c<<8; addr|=d; return addr;}
char* pIp,char *pMask
。。。
unsigned int ip = IPToUInt(pIp);
unsigned int mask= IPToUInt(pMask);
unsigned int net_lower=( ip & mask );
unsigned int net_upper=( net_lower | (~mask) );
unsigned long m_lsubnet=net_upper;
。。。
struct sockaddr_in subnet_addr;
subnet_addr.sin_family=AF_INET;
subnet_addr.sin_addr.s_addr=pLSearch->m_lsubnet;//inet_addr("255.255.255.255");//inet_addr(pLSearch->m_subip);
subnet_addr.sin_port=htons(BROADCAST_SEND_PORT_L);
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。