首页 > 代码库 > 转换IP地址为整数

转换IP地址为整数

wKioL1Q_qiXABGXEAAPcZEtv00w218.jpg

#include <iostream>
#include <string.h>
using namespace std;
int main()
{
	char input[100]="10.0.3.193";
	//cin>>input;
	int output=0;
	int i=0,j=0,k;
	int ip[4];
	char temp[100]="\0";
	memset(ip,0,sizeof(ip));
	while(input[i]!=‘\0‘)
	{
		if(input[i]!=‘.‘)
		{
			ip[j]=ip[j]*10+input[i++]-‘0‘;
		}
		else
		{
			j++;
			i++;
		}
	}
	for(i=0,j=0;i<4;i++,j++)
	{
		k=(i+1)*8-1;
		while(ip[j]!=0)
		{
			temp[k--]=ip[j]%2+‘0‘;
			ip[j]=ip[j]/2;
		}
		while(k!=i*8-1)
		{
			temp[k--]=‘0‘;
		}
	}
	temp[32]=‘\0‘;
	for(i=0;i<32;i++)
	{
		output=output*2+temp[i]-‘0‘;
	}
	printf("%d",output);
}


转换IP地址为整数