结构体:子网掩码

结构体:子网掩码_第1张图片

结构体:子网掩码_第2张图片 

结构体:子网掩码_第3张图片 

#include
using namespace std;
union IP  //创建共用体
{
	unsigned char a[4];
	unsigned int ip;
};
IP getIP()  //获取ip函数
{
	int a, b, c, d;
	scanf_s("%d.%d.%d.%d", &a, &b, &c, &d);
	IP address;
	address.a[3] = a; address.a[2] = b;
	address.a[1] = c; address.a[0] = d;
	return address;
}
int main()
{
	IP host, mask, otherip;
	host = getIP();  //获取主机ip
	mask = getIP();  //获取掩码ip
	int n;
	cin >> n; //有n个其他网
	for (int i = 0; i < n; i++)
	{
		otherip = getIP();  //获取其他网的ip
		//判断主机和其他网是否是内网
		if ((host.ip & mask.ip) == (otherip.ip & mask.ip))
			cout << "inner" << endl;
		else
			cout << "outer" << endl;
	}
	return 0;
}

结构体:子网掩码_第4张图片

 

你可能感兴趣的:(算法,c++,数据结构)