直接上代码(不要直接拷贝,中间少了一行啊):

  1.  
    #include <string>
  2.  
    #include <iostream>
  3.  
    using namespace std;
  4.  
    int shu[4]={0};
  5.  
    int IPtoINT(string s){
  6.  
    int i,a=0,c=0,p=0;
  7.  
    for(i=0;i<s.length();i++)
  8.  
    {
  9.  
    if(s[i]!='.')
  10.  
    {
  11.  
    a=a*10+(s[i]-'0');
  12.  
    }else{
  13.  
    if(a>=0&&a<=255)
  14.  
    {
  15.  
    shu[p++]=a;
  16.  
    c++;
  17.  
    }else
  18.  
    {//cout<<"NO"<<endl;
  19.  
    return 0;}
  20.  
     
  21.  
    }
  22.  
    }
  23.  
    if(c!=3)
  24.  
    {//cout<<"NO"<<endl;
  25.  
    return 0;}
  26.  
    else
  27.  
    {if(a>=0&&a<=255)
  28.  
    {
  29.  
    shu[p++]=a;
  30.  
    }else
  31.  
    {//cout<<"NO"<<endl;
  32.  
    return 0;}
  33.  
     
  34.  
    }
  35.  
    //cout<<"YES"<<endl;
  36.  
    return 1;
  37.  
    }
  38.  
    void INTtoIP(long s)
  39.  
    {
  40.  
    shu[0]=s&255;
  41.  
    shu[1]=(s&(255*256))/256;
  42.  
    shu[2]=(s&(255*256*256))/(256*256);
  43.  
    shu[3]=(s&(255*256*256*256))/(256*256*256);
  44.  
    }
  45.  
    void main(){
  46.  
    string ips;
  47.  
    long ipint,stoint=0;
  48.  
    int i;
  49.  
    cin>>ips;
  50.  
    cin>>ipint;
  51.  
    if(IPtoINT(ips))
  52.  
    {
  53.  
    for(i=0;i<4;i++)
  54.  
    stoint=stoint*256+shu[i];
  55.  
    cout<<stoint<<endl;
  56.  
    }
  57.  
    INTtoIP(ipint);
  58.  
    if(shu[0]<256&&shu[1]<256&&shu[2]<256&&shu[3]<256)
  59.  
    {
  60.  
    cout<<shu[3]<<'.'<<shu[2]<<'.'<<shu[1]<<'.'<<shu[0]<<endl;
  61.  
    }
  62.  
    }

算法:整数与ip地址转换的更多相关文章

  1. python整数与IP地址转换

    python整数与IP地址转换 [转] 我们有时会将一个整数与IP地址进行互换,用python代码实现很简单将一个整数如2000000,变为一个IP地址的方式 >>> import ...

  2. python整数与IP地址转换 [转]

    我们有时会将一个整数与IP地址进行互换,用python代码实现很简单将一个整数如2000000,变为一个IP地址的方式 >>> import socket >>> ...

  3. 整数与IP地址间的转换

    描述 原理:ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成一个长整数.举例:一个ip地址为10.0.3.193每段数字            ...

  4. IP地址转换成Long型数字的算法

    在应用程序开发中,涉及到IP地址的存储,大部分开发人员都将其存为String(或文本类型).能否将固定格式为m.n.x.y的IP地址转换成 Long型的数字呢?答案是肯定的.在数据库层面,可以直接将结 ...

  5. ip地址转换

    通常,我们用点分十进制字符串表示ipv4地址(192.168.1.1),用十六进制字符串表示ipv6地址(fe80::20c:29ff:fee9:4bcc). ipv4转换函数 #include &l ...

  6. 华为上机:IP地址转换

    IP地址转换 描述: IP地址的长度为32,即有2^32-1个地址.IP地址一般采用点分十进制表示法,例如"192.168.1.1".IP地址也可以直接用一个32位的整数进行表示. ...

  7. 套接字编程相关函数(1:套接字地址结构、字节序转换、IP地址转换)

    1. 套接字地址结构 1.1 IPv4套接字地址结构 IPv4套接字地址结构通常也称为“网际套接字地址结构”,它以sockaddr_in命名,定义在<netinet/in.h>头文件中.下 ...

  8. 【网络编程一】主机字节序与网络字节序以及ip地址转换函数

    在计算机设计之初,对内存中数据的处理也有不同的方式,(低位数据存储在低位地址处或者高位数据存储在低位地址处),然而,在通信的过程中(ISO/OSI模型和TCP/IP四层模型中),数据被一步步封装(然后 ...

  9. [转]字符型IP地址转换成数字IP的SQL函数

    使用SQL函数可以实现许多的功能,下面为您介绍的是字符型IP地址转换成数字IP的SQL函数示例,供您参考,希望对您学习SQL函数能够有所帮助.      /**//*--调用示例       sele ...

随机推荐

  1. Unity调用Windows对话框保存时另存为弹框

    Unity开发VR之Vuforia 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...

  2. HDU 2023 求平均成绩

    Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Status Practice HDU ...

  3. 2017.7.12 Python的6种内建序列及操作

    数据结构是通过某种方式(例如对元素进行编号)组织在一起的数据元素的集合,这些数据元素可以是数字或者字符,甚至可以是其他数据结构. 在Python中,最基本的数据结构是序列(sequence).序列中的 ...

  4. centos6安装opencv2

    环境 centos6.5 opencv2.4 python2.6(centos自带的) 下载 opencv可从GitHub下载https://github.com/opencv/opencv/tree ...

  5. C++学习(二十二)(C语言部分)之 项目扫雷实例

    一.新建项目 二.新建源文件 main.cpp和mining,cpp 三.新建头文件 mining.h 四.图片资源添加 添加完成后会在头文件里面生成一个.h头文件,用来调用资源 打开之后可以看到,对 ...

  6. 20165313 《Java程序设计》第七周学习总结

    教材学习总结 1.下载安装MySQL数据库管理系统. 2.MySQL数据库基本操作. 3.利用JAVA程序对MySQL数据库系统进行查找,更新,添加和删除操作. 学习中的问题与解决方案 1.运行书上安 ...

  7. 监控页面后退前进,浏览器文档加载事件之pageshow、pagehide

    https://www.cnblogs.com/milo-wjh/p/6811868.html http://www.runoob.com/jsref/event-onpageshow.html on ...

  8. ionic中 ng-repeat下使用ng-model获取不到选中数据问题:

    在这种情况下点击了单选框并不能获取$scope.unitcode的值: <ion-list> <ion-radio ng-repeat="item in userInfos ...

  9. PureComponent的作用及一些使用陷阱

    默认渲染行为的问题 在React Component的生命周期中,有一个shouldComponentUpdate方法.这个方法默认返回值是true. 这意味着就算没有改变组件的props或者stat ...

  10. 发布自己的npm包

    如何发布自己写的npm包,这里有详细解释 : https://blog.csdn.net/u010130282/article/details/82629924 本文旨在解释遇到的问题: 1:需要设置 ...