算法:整数与ip地址转换
直接上代码(不要直接拷贝,中间少了一行啊):
- #include <string>
- #include <iostream>
- using namespace std;
- int shu[4]={0};
- int IPtoINT(string s){
- int i,a=0,c=0,p=0;
- for(i=0;i<s.length();i++)
- {
- if(s[i]!='.')
- {
- a=a*10+(s[i]-'0');
- }else{
- if(a>=0&&a<=255)
- {
- shu[p++]=a;
- c++;
- }else
- {//cout<<"NO"<<endl;
- return 0;}
- }
- }
- if(c!=3)
- {//cout<<"NO"<<endl;
- return 0;}
- else
- {if(a>=0&&a<=255)
- {
- shu[p++]=a;
- }else
- {//cout<<"NO"<<endl;
- return 0;}
- }
- //cout<<"YES"<<endl;
- return 1;
- }
- void INTtoIP(long s)
- {
- shu[0]=s&255;
- shu[1]=(s&(255*256))/256;
- shu[2]=(s&(255*256*256))/(256*256);
- shu[3]=(s&(255*256*256*256))/(256*256*256);
- }
- void main(){
- string ips;
- long ipint,stoint=0;
- int i;
- cin>>ips;
- cin>>ipint;
- if(IPtoINT(ips))
- {
- for(i=0;i<4;i++)
- stoint=stoint*256+shu[i];
- cout<<stoint<<endl;
- }
- INTtoIP(ipint);
- if(shu[0]<256&&shu[1]<256&&shu[2]<256&&shu[3]<256)
- {
- cout<<shu[3]<<'.'<<shu[2]<<'.'<<shu[1]<<'.'<<shu[0]<<endl;
- }
- }
算法:整数与ip地址转换的更多相关文章
- python整数与IP地址转换
python整数与IP地址转换 [转] 我们有时会将一个整数与IP地址进行互换,用python代码实现很简单将一个整数如2000000,变为一个IP地址的方式 >>> import ...
- python整数与IP地址转换 [转]
我们有时会将一个整数与IP地址进行互换,用python代码实现很简单将一个整数如2000000,变为一个IP地址的方式 >>> import socket >>> ...
- 整数与IP地址间的转换
描述 原理:ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成一个长整数.举例:一个ip地址为10.0.3.193每段数字 ...
- IP地址转换成Long型数字的算法
在应用程序开发中,涉及到IP地址的存储,大部分开发人员都将其存为String(或文本类型).能否将固定格式为m.n.x.y的IP地址转换成 Long型的数字呢?答案是肯定的.在数据库层面,可以直接将结 ...
- ip地址转换
通常,我们用点分十进制字符串表示ipv4地址(192.168.1.1),用十六进制字符串表示ipv6地址(fe80::20c:29ff:fee9:4bcc). ipv4转换函数 #include &l ...
- 华为上机:IP地址转换
IP地址转换 描述: IP地址的长度为32,即有2^32-1个地址.IP地址一般采用点分十进制表示法,例如"192.168.1.1".IP地址也可以直接用一个32位的整数进行表示. ...
- 套接字编程相关函数(1:套接字地址结构、字节序转换、IP地址转换)
1. 套接字地址结构 1.1 IPv4套接字地址结构 IPv4套接字地址结构通常也称为“网际套接字地址结构”,它以sockaddr_in命名,定义在<netinet/in.h>头文件中.下 ...
- 【网络编程一】主机字节序与网络字节序以及ip地址转换函数
在计算机设计之初,对内存中数据的处理也有不同的方式,(低位数据存储在低位地址处或者高位数据存储在低位地址处),然而,在通信的过程中(ISO/OSI模型和TCP/IP四层模型中),数据被一步步封装(然后 ...
- [转]字符型IP地址转换成数字IP的SQL函数
使用SQL函数可以实现许多的功能,下面为您介绍的是字符型IP地址转换成数字IP的SQL函数示例,供您参考,希望对您学习SQL函数能够有所帮助. /**//*--调用示例 sele ...
随机推荐
- SQLI DUMB SERIES-2
less2 同Less1相同,存在注入点 输入 ?id=1' 说明我们输入的数据被原封不动的带入了,无需要在1后面加单引号 (1)爆字段 ?id=1 order by 4 字段为3. (2)用unio ...
- cell-augmented
https://zhuanlan.zhihu.com/p/33147353 https://blog.csdn.net/thm225679/article/details/79689008 https ...
- linux 的IP配置和网络问题的排查
1.6 IP的配制, 首先要会用: ifconfig 和加相关参数如: ifconfig -a, 来查看,自己的电脑网络配制. 再次就必需要知道,默认IP配制文件的地方: cd /etc/sysc ...
- MergeKLists
public ListNode mergeKLists(ListNode[] lists) { if(lists==null||lists.length==0) return null; Priori ...
- JavaScript面试知识点与开发技巧汇总
1.bind相关用法 fun.bind(obj)将obj传入fun作为其作用域 fun.bind将返回一个新的函数地址,fun.bind(obj)!=fun.bind(obj) 反复bind只有第一次 ...
- functional program language
1.什么是函数式编程语言 函数式语言(functional language)一类程序设计语言,是一种非冯·诺伊曼式的程序设计语言.函数式语言主要成分是原始函数.定义函数和函数型.这种语言具有较强的组 ...
- HTML中嵌套的子frame如何访问父页面中的函数?
我解决的办法,在父页面写了个函数,然后在frame页面调用父页面的函数,具体代码如下: 父:function a(){} 子frame:window.parent.a(); 问题迎刃而解 https: ...
- Tomcat建立多个应用(Web Server),多个主机,多个站点的方法
https://blog.csdn.net/chungle2011/article/details/52317433 http://piperzero.iteye.com/blog/1475773 转 ...
- MySQL Binlog信息查看
##=====================================## ## 在MySQL内部查看binlog文件列表 ## SHOW BINARY LOGS; ##=========== ...
- day 52 js学习 DOM 和BOM
前戏 到目前为止,我们已经学过了JavaScript的一些简单的语法.但是这些简单的语法,并没有和浏览器有任何交互. 也就是我们还不能制作一些我们经常看到的网页的一些交互,我们需要继续学习BOM和DO ...