struct in_addr addr_ip;
struct in_addr addr_netmask;
struct in_addr addr_ipseg;
memset(&addr_ip, 0, sizeof(struct in_addr));
memset(&addr_netmask, 0, sizeof(struct in_addr));
memset(&addr_ipseg, 0, sizeof(struct in_addr));
inet_aton(ip, &addr_ip);
inet_aton(netmask, &addr_netmask);
addr_ipseg.s_addr = addr_ip.s_addr & addr_netmask.s_addr;
char * ip_seg = inet_ntoa(addr_ipseg);
printf("the segment of %s is %s\n", ip, ip_seg);
return ;
struct in_addr addr_netmask;
struct in_addr addr_ipseg;
memset(&addr_ip, 0, sizeof(struct in_addr));
memset(&addr_netmask, 0, sizeof(struct in_addr));
memset(&addr_ipseg, 0, sizeof(struct in_addr));
inet_aton(ip, &addr_ip);
inet_aton(netmask, &addr_netmask);
addr_ipseg.s_addr = addr_ip.s_addr & addr_netmask.s_addr;
char * ip_seg = inet_ntoa(addr_ipseg);
printf("the segment of %s is %s\n", ip, ip_seg);
return ;